finds.dev← search

// the find

getify/TypL

★ 384 · JavaScript · MIT · updated Nov 2021

The Type Linter for JS

TypL is Kyle Simpson's attempt at a type linter for JavaScript that uses ES6 tagged template literals as its annotation syntax, so annotated code runs without compilation. The idea is to lint type safety without requiring you to migrate to TypeScript or Flow — just add optional annotations and run the checker.

The zero-compilation angle is genuinely interesting: tagged templates are valid JS, so you can run annotated source directly in Node without a build step. The heavy inference approach means you can point it at existing code and get some signal without annotating anything first. Coming from Kyle Simpson, the type coercion opinions are thoughtful — this isn't just TypeScript-lite, it explicitly models JS's actual coercion rules.

Last commit was 2021, and the README itself says 'still in early development' — so this is effectively abandoned vaporware at 384 stars. The tagged-template annotation syntax is awkward in practice and has zero editor tooling support. There are no type definitions for third-party libraries and no ecosystem around it, so you'd be type-checking your own code in a vacuum. At this stage TypeScript wins on every practical dimension: editor support, community, library coverage, and actual completeness.

View on GitHub → Homepage ↗

// want more like this?

We dig through GitHub every week and send a few repos picked for what you actually care about — each with an honest take like this one.

Get finds in your inbox → Search again →