TypeScript execution environment and REPL for node. Works with
typescript@>=1.5
.
npm install -g ts-node
# Install a TypeScript compiler (requires `typescript` by default).
npm install -g typescript
- Execute TypeScript files with node
- Interactive REPL
- Execute (and print) TypeScript through the CLI
- Uses source maps
- Loads from
tsconfig.json
# Execute a script as you world normally with `node`.
ts-node script.ts
# Starts the TypeScript REPL.
ts-node
# Execute code with TypeScript.
ts-node -e 'console.log("Hello, world!")'
# Execute, and print, code with TypeScript.
ts-node -p '"Hello, world!"'
# Pipe scripts to execute with TypeScript.
echo "console.log('Hello, world!')" | ts-node
mocha --compilers ts:ts-node/register --compilers tsx:ts-node/register [...args]
ts-node node_modules/tape/bin/tape [...args]
# Just create a `gulpfile.ts` and run `gulp`.
gulp
Typescript Node uses tsconfig.json
automatically, use -n
to skip loading tsconfig.json
.
You can set options by passing them in before the script.
ts-node --compiler ntypescript --project src --ignoreWarnings 2304 hello-world.ts
- --project, -P Path to resolve
tsconfig.json
from (orfalse
) (alsoprocess.env.TS_NODE_PROJECT
) - --compiler, -C Use a custom, require-able TypeScript compiler compatible with
typescript@>=1.5.0-alpha
(alsoprocess.env.TS_NODE_COMPILER
) - --ignoreWarnings, -I Set an array of TypeScript diagnostic codes to ignore (also
process.env.TS_NODE_IGNORE_WARNINGS
) - --disableWarnings, -D Ignore all TypeScript errors (also
process.env.TS_NODE_DISABLE_WARNINGS
) - --compilerOptions, -O Set compiler options using JSON (E.g.
--compilerOptions '{"target":"es6"}'
) (alsoprocess.env.TS_NODE_COMPILER_OPTIONS
) - --fast, -F Use TypeScript's
transpileModule
mode (no type checking, but faster compilation) (alsoprocess.env.TS_NODE_FAST
) - --lazy, -L Lazily defer TypeScript initialization until first
.ts
file - --no-cache Skip hitting the compiled JavaScript cache
- --cache-directory Configure the TypeScript cache directory
require('ts-node').register({ /* options */ })
// Or using the shortcut file.
require('ts-node/register')
MIT