|
All checks were successful
pr-checks / check (pull_request) Successful in 17s
|
||
|---|---|---|
| .forgejo/workflows | ||
| bin | ||
| src | ||
| test | ||
| tools | ||
| .gitignore | ||
| AGENTS.md | ||
| coverage-baseline.json | ||
| dprint.jsonc | ||
| package-lock.json | ||
| package.json | ||
| readme.md | ||
| tsconfig.json | ||
| vitest.config.ts | ||
TypeScript Lie Detector
STATUS: Not ready for usage at all. Please monitor TSLD's Issue Tracker
A problem with current TypeScript is all types are given as-is, with no way to truly tell if those types are correct. Lie Detector instruments your codebase with many runtime checks to verify the soundness of your codebase.
Obvious sources of "lies" in TypeScript include the as clause and non-null
assertions (postfix ! operator), but there are many many more places that
types can pass but can fail at runtime. In many cases, proper type narrowing is
better than having assertions, but narrowing system in TypeScript can only get
so far.
Usage
TSLD is not currently published. If the repo is cloned, one can run
npx tsld-node in place of node.js to lie-detect your code, like ts-node.
Contributions
This repository accepts pull requests to either its
main repository on Forgejo as
well as the GitHub Mirror.
Until Forgejo has a federated issue tracker, bugs can be reported on
GitHub Discussions
or sent over email to git@paperclover.net