Typed JavaScript uses the existing tooling around JSDoc and VS Code as a detachable type system for JavaScript. Type error are reported prior to runtime, but without an explicit compile step or change of language. As such, Typed JavaScript offers an alternative for those looking for the benefits of TypeScript but with fewer risks.
For details, see the article Types without Typescript.