Home / Companies / LogRocket / Blog / Post Details
Content Deep Dive

Running TypeScript in Node.js: tsx vs. ts-node vs. native

Blog post from LogRocket

Post Details
Company
Date Published
Author
Amazing Enyichi Agu
Word Count
2,807
Language
-
Hacker News Points
-
Summary

TypeScript enhances JavaScript by adding static typing, which reduces unpredictable behavior and bugs, but traditionally required a two-step process of compilation and execution in Node.js. This changed with Node.js v22.6, which introduced experimental support for TypeScript through type stripping, allowing direct execution of TypeScript code. This feature, while fast and efficient for development, lacks full TypeScript support and is not yet recommended for production. Third-party tools like ts-node and tsx offer alternatives, with ts-node providing full TypeScript support and type checking, while tsx focuses on speed and ease of use without type checking. Each tool has its own strengths and limitations, and the choice depends on the specific needs of the project, such as the need for type checking or fast execution without production overhead. Node.js's experimental type stripping and the ongoing development of features like experimental-transform-types hint at a future where Node.js could fully support TypeScript, similar to other runtimes like Deno and Bun.