Vibeleaderboard
Index / tool
Visit github.com
Category
Developer Tools
Rank
No. 1679Tools index
Pricing
Open Source
Type
TOOL
GitHub
22 stars
Latest release
v0.0.10
Date

About

A language server that shows package version hover information in package.json files, built by Zed Industries.

What it does

It watches JavaScript package manifests opened in an editor, parses recognized dependency sections, and queries the npm registry. Hover responses show the latest release, description, publication age, and optional homepage. Completion responses suggest matching versions in descending order.

Why it's ranked here

This is a focused editor utility with useful detail beyond a simple version lookup. Structured parsing avoids treating arbitrary JSON keys as packages, while caching limits repeated registry requests. The narrow scope is clear, but network dependence and an evidently stale parser test reduce confidence in reliability.

What's good

It recognizes regular, development, peer, optional, and bundled dependency sections. Hover output combines package identity, description, latest version, relative publication time, and homepage. Version completion strips common range operators, filters against the typed text, sorts newer semantic versions first, and reports unparseable registry entries through editor warnings.

Tradeoffs

The server relies on npm registry responses and converts fetch or parsing failures into generic internal errors. Its cache lasts only 30 seconds, so longer sessions can repeat network requests. It synchronizes complete document contents rather than incremental edits. The included parser test no longer matches the parser interface or return type.

How to use it well

Use it when you frequently inspect or edit npm dependency ranges and want registry context without leaving the editor. It fits editors that can launch a standard language server over input and output streams. It does not install packages, resolve dependency conflicts, audit security, or manage lockfiles.

Technical notes+

src/main.rs implements a tower_lsp::LanguageServer over stdin/stdout, advertises full-text synchronization, hover support, and completion triggered by .. It stores each matching document as source text plus a Tree-sitter tree. src/parser.rs queries dependency objects with Tree-sitter JSON and returns the package, current version text, and cursor range. src/fetcher.rs requests encoded package names from https://registry.npmjs.org/, parses semantic versions including prereleases, and keeps metadata in an in-memory 30-second cache. The test in src/parser.rs calls extract_package_name with two arguments although its definition requires three, and expects a tuple rather than ParseResult. .github/workflows/release.yml builds release binaries for six Linux, macOS, and Windows targets.

Observed

License
MIT
Primary language
Rust, using the 2021 edition
Interface
Language Server Protocol over standard input and standard output
Registry
Reads package metadata from the npm registry HTTP endpoint
Release packaging
GitHub release workflow publishes compressed binary assets
Platform support
Release targets cover x86-64 and ARM64 on Linux, macOS, and Windows
Parsing
Tree-sitter JSON restricts matches to recognized dependency sections

Read from README.md, Cargo.toml, src/main.rs, src/parser.rs, src/fetcher.rs, .github/workflows/release.yml.

What it can do

  • Display package version information on hover

    package.json file with package dependenciesHover tooltip showing current and available package versions

  • Provide language server protocol support

    Text editor or IDE with LSP clientReal-time package version analysis and information

  • Parse package.json dependencies

    package.json file contentStructured package dependency information

  • Fetch current package version data

    Package names from package.jsonUp-to-date version information from package registries

  • Integrate with code editors

    Compatible text editor or IDEEnhanced package.json editing experience with version insights

Tags

zedlanguage-servernpmlsp

Tech Stack

Rust

Comments (0)

No comments yet

Editorially curated, with community endorsements as a secondary signal. Corrections welcome.