NPM Installer
Elide installs npm dependencies natively, powered by aube,
a fast Rust-based Node.js package manager **embedded directly in the Elide
binary**. There is no separate npm, pnpm, or yarn to install — and no
Node.js process to fork. Resolution runs in-process.
npm is one of three ecosystems handled by Elide's unified installer; see Dependencies for the cross-ecosystem overview.
Quick start
Declare npm packages in elide.pkl:
pkl
amends "elide:project.pkl"
dependencies {
npm {
packages {
"react@19.0.0"
"@scope/widget@1.2.3"
}
devPackages {
"typescript@5.6.2"
}
}
}…or bring an existing package.json — Elide reads it as-is. Then:
bash
elide installHow it works
- npm registry compatibility — resolves packages from the npm registry, through pkg.st (
npm.pkg.st) by default for security and caching. Use the global--no-pkgstflag to resolve against the upstream registry directly. - Lockfile — aube writes
aube-lock.yamlfor reproducible installs. - Content-addressed store — packages are stored once and linked, not copied per project.
- Conventional layout — packages install under
.dev/dependencies/npm/node_modules, and a rootnode_modulessymlink points there so existing tooling resolves modules normally.
Using aube directly
The full aube CLI is available through Elide. Everything after -- is passed
straight to aube:
bash
elide aube -- install --ignore-scripts
elide aube -- --helpAdditional Resources
- Dependencies — unified npm + PyPI + Maven installer
- JavaScript & TypeScript — running JS/TS with Elide
- Read more about aube at aube.jdx.dev.