Enhance your npm package workflow in Zed.
This extension runs the npmx-language-server — the same language server used by the VS Code version — over stdio. The server version is pinned to the extension version and auto-installed from npm when needed.
- Hover links to package pages and docs on npmx.dev
- Emoji hover icons for non-VS Code editors
- Version completion with provenance and prerelease settings
- Diagnostics for upgrades, deprecations, replacements, vulnerabilities, dist tags, and engine mismatches
- Document links for package names
- Workspace-aware dependency resolution for npm, pnpm, yarn, and bun projects
Settings under lsp.npmx.settings are forwarded to the language server as npmx workspace configuration. Use scoped npmx settings without the leading npmx. prefix:
{
"lsp": {
"npmx": {
"settings": {
"hover": {
"enabled": true
},
"completion": {
"version": "provenance-only",
"excludePrerelease": true
},
"diagnostics": {
"upgrade": true,
"deprecation": true,
"replacement": true,
"vulnerability": true,
"distTag": true,
"engineMismatch": true
},
"packageLinks": "declared"
}
}
}
}To override the language server command (e.g. for local development):
{
"lsp": {
"npmx": {
"binary": {
"path": "node",
"arguments": [
"/absolute/path/to/vscode-npmx/packages/language-server/dist/index.cjs",
"--stdio"
]
}
}
}
}- Build the language server from the repo root with
pnpm build. - Configure
lsp.npmx.binaryin Zed settings pointing to the local build (see above). - Install
extensions/zedas a dev extension in Zed.
- Bump version in
Cargo.toml,extension.toml, andpackages/language-server/package.json. - Build the monorepo and publish
npmx-language-serverto npm. - Open a PR to zed-industries/extensions updating the submodule and version.
- Zed dev extensions require Rust installed via
rustup; the Zed docs explicitly call out that Homebrew Rust will not work for dev extension compilation. - The language server version is pinned to the extension's
Cargo.tomlversion. It auto-installs via the Zed npm API when the extension activates.