tsx
Node.js runtime that can instantaneously load TypeScript & ESM, powered by esbuild.
Features
- Transforms TypeScript & ESM → to CJS or ESM (depending on package type)
- Supports TS extensions
.cjs
& .mjs
(.cts
& .mts
)
- Supports Node.js v12.20+
- Handles
node:
import prefixes
- Hides experimental feature warnings
Install
npm install --save-dev tsx
Install globally
Install it globally to use it anywhere, outside of your npm project, without npx.
npm install --global tsx
Usage
Note: Commands are prefixed with npx
to execute the tsx
binary, but it's not necessary if globally installed or when using it in the script
object in package.json
Run TypeScript / ESM / CJS module
npx tsx ./file.ts
Watch mode
Run file and automatically re-run on changes.
All imported files are watched except from the following directories:
node_modules
, bower_components
, vendor
, dist
, and .*
(hidden directories).
Press Return to manually re-run.
npx tsx watch ./file.ts
Cache
Modules transformations are cached in the system cache directory (TMPDIR
). Transforms are cached by content hash so duplicate dependencies are not re-transformed.
Set the --no-cache
flag to disable the cache:
npx tsx --no-cache ./file.ts
Dependencies