Typescript is hands down my favorite way to write Javascript these days, but sometimes when I just want to run a quick JS script to do something, I'll still reach for node ./foo/script.js
. I'll sometimes reach for babel-node
, or
@babel/register`, but that can be pretty difficult to configure sometimes, and has some perf issues.
It does work though, and I have a post on it...
[
Running Typescript programs with babel-node aka how does babel register work
Running Typescript programs on demand with babel-node basically uses babel register, but how does babel register work? This post will detail it.
Jonathan CreamerJonathan Creamer
](https://www.jonathancreamer.com/running-programs-with-babel-node/)
However, I recently discovered that ESBuild has a similar mechanism to babel-node called esbuild-runner
.
[
esbuild-runner
Super-fast on-the-fly transpilation of modern JS, TypeScript and JSX using esbuild. Latest version: 2.2.1, last published: 10 months ago. Start using esbuild-runner in your project by running npm i esbuild-runner
. There are 13 other projects in the npm registry using esbuild-runner.
](https://www.npmjs.com/package/esbuild-runner)
It's SUPER easy to use as well.
`
npm i esbuild esbuild-runner
`
Then, anytime you run a .ts
file, you do...
node -r esbuild-runner/register ./path/to/script.ts
And it's stupid fast...
I hope to employ esbuild-runner
in some more local developer tooling so developers don't have to pre-compile or build their tools.
Top comments (0)