TS-ESNode
volta
Our great sponsors
TS-ESNode | volta | |
---|---|---|
2 | 84 | |
37 | 9,964 | |
- | 3.9% | |
6.0 | 9.1 | |
5 months ago | 7 days ago | |
TypeScript | Rust | |
MIT License | GNU General Public License v3.0 or later |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
TS-ESNode
-
Hello Yarn 2, Goodbye node_modules
CommonJS is a great module system if you're using JS for scripting Unix (which it excels at). Is there a good reason to use ESM though? I've been half-joking that it's the "extinguish" phase of Microsoft's EEE strategy for JS.
I know one legitimate reason is "tree shaking" (source-level LTO when bundling modules). Dumber, static import/export statements probably simplify that in some way. However ESM destroys the isomorphism between JS modules and the filesystem.
One change that ES modules introduced, I think, for no other reason than to be backwards incompatible, is changing the behavior of the default export (`export default foo` transpiles down to `module.exports.default = foo` instead of `module.exports = foo`).
Other "ohai guys this is the new normal now" kinds of changes are making the dynamic imports async-only (after not supporting them for a while) as well as changing the behavior of module resolution.
And the cherry on top is called TS-ESNode: https://github.com/K-FOSS/TS-ESNode because TypeScript modules and ESM are the same thing yet you need to somehow find this third-party shim which is required for them to work together at all. It's enabled by wrapping the interpreter, just like Yarn2's new dependency resolution.
- easy way to reduce RAM consumption when using ts-node
volta
- Volta – Fastest Node version manager in Rust
-
Faster Postgres Queries with Cloudflare Hyperdrive and Neon
Your local machine should have Node.js and npm installed. Wrangler CLI requires a Node version of 16.13.0 or later to avoid permission issues.
- The Hassle-Free JavaScript Tool Manager
-
You should be using rtx
For node version management, I highly recommend Volta (not affiliated) - https://volta.sh
-
Volta and NW.js are amazing together
Go to https://volta.sh and install Volta
-
What's New in Node.js 21
Alternatively, a better way to manage Node.js releases on your machine is to use an environment management tool like Volta that can install and switch between multiple versions seamlessly.
-
Best practices for HarperDB projects using TypeScript
To use TypeScript you need Node.js installed, be sure to use the latest LTS version. You can check it by running node -v in your terminal. If you don't have it installed, you can download it here, or use a version manager like asdf, nvm, or even volta.
- Volta – The Hassle-Free JavaScript Tool Manager
- Volta: The Hassle-Free JavaScript Tool Manager
- INSTALLATION
What are some alternatives?
esbuild-runner - ⚡️ Super-fast on-the-fly transpilation of modern JS, TypeScript and JSX using esbuild
fnm - 🚀 Fast and simple Node.js version manager, built in Rust
ts-node - TypeScript execution and REPL for node.js
asdf - Extendable version manager with support for Ruby, Node.js, Elixir, Erlang & more
esno - Alias to `tsx`
nvm - Node Version Manager - POSIX-compliant bash script to manage multiple active node.js versions
nvm for Windows - A node.js version management utility for Windows. Ironically written in Go.
n - Node version management
nushell - A new type of shell
nvs - Node Version Switcher - A cross-platform tool for switching between versions and forks of Node.js
Docker Compose - Define and run multi-container applications with Docker
rustdesk - An open-source remote desktop, and alternative to TeamViewer.