I'm currently using ts-node with express in production and it's working well so far. Is there any reason that I should compile and run .js
instead?
ts-node is a TypeScript execution engine and REPL for Node. js. It JIT transforms TypeScript into JavaScript, enabling you to directly execute TypeScript on Node. js without precompiling.
ts-node offers the -transpile-only or -T flag to compile your TypeScript code into JavaScript.
According to Blake Embrey, the author of ts-node, you can use it in production BUT you should use it with the --transpile-only
flag.
Example:
ts-node --transpile-only ./src/start.ts
If you are compiling with transpile only, it will have a lower memory footprint as no type information will be generated. However, it can come to problems when you are using reflect-metadata
(with experimental support for decorators).
In short: Use ts-node --transpile-only
(there is also ts-node-transpile-only
) in production when you are not using reflect-metadata
. Otherwise, use tsc
in combination with classic node
.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With