Node.js enhancement
Swap node
for tsx
tsx
is a drop-in replacement for node
, meaning you can use it the exact same way (supports all command-line flags).
If you have an existing node
command, simply substitute it with tsx
.
node --no-warnings --env-file=.env ./file.js
↓
tsx --no-warnings --env-file=.env ./file.js
Node.js version matters
Under the hood, tsx
calls node
. This means the Node.js features supported in tsx
depend on the Node.js version you have installed.
Flag & arguments positioning
Just like with node
, correctly positioning flags and arguments is important when using tsx
.
Place tsx flags immediately after tsx
, and place flags and arguments for your script after the script path.
tsx [tsx flags] ./file.ts [flags & arguments for file.ts]
TypeScript REPL
tsx extends the Node.js REPL to support TypeScript, allowing interactive coding sessions directly in TypeScript.
tsx
What is the Node.js REPL?
The Node.js REPL is an interactive prompt that immediately executes input code, ideal for learning and experimenting. tsx enhances this tool by adding TypeScript support.
Test runner
tsx enhances the Node.js built-in test runner with TypeScript support. You can use it the same way:
tsx --test
It will automatically recognize test files with TypeScript extensions:
**/*.test.?[cm][jt]s
**/*-test.?[cm][jt]s
**/*_test.?[cm][jt]s
**/test-*.?[cm][jt]s
**/test.?[cm][jt]s
**/test/**/*.?[cm][jt]s