v0.9.0 is a feature-heavy release centered on the compare page, package-page polish, and broader internationalization. The biggest changes are a new scatter-based comparison view, more package metadata in comparisons, and a handful of quality-of-life fixes around sharing, auth, and README rendering.
What's new
-
The compare page now uses a scatter chart with selectable X and Y facets instead of the old quadrant view. You can choose any two facets, including the same facet on both axes for diagonal sorting, and the chart keeps the usual export, alt-copy, and annotation actions. (#2472)
-
The compare page also adds three new comparison facets: GitHub stars, open GitHub issues, and package created date. Created date comes from existing package data, while GitHub stars are fetched only for packages that point at GitHub repositories. (#2479)
-
Package install commands now support Vite+ with the
vppackage manager command. This extends the get-started/package-manager UI to cover Vite+ projects alongside the existing install flows. (#2451) -
Package pages now include a
socket.devdestination in the command palette, so external package links are available from the same Cmd/Ctrl+K workflow as the rest of the page actions. (#2481) -
Official badges now support a
likestype. That badge uses the same package-like data exposed fromhttps://npmx.dev/api/social/likes/[pkg], so you can show npmx likes without wiring that endpoint yourself. (#2478) -
Code display preferences now include a setting to turn ligatures off. The setting updates a root data attribute used by global styles, and it ships with translated labels so it fits into the existing settings UI. (#2476)
-
Internationalization coverage expanded with new Dutch (
nl-NL) and Chinese translations, plus follow-up translation completeness work across several existing locales. Dutch is added as a language with variants, including support fornl. (#2118, #2485) -
You can now prefill the selected package manager from a query parameter. That makes it easier to link directly to a package page with the install command already tailored to the reader’s preferred tool. (#2520)
Fixes
-
Fixed compare-page OG images on Vercel so query parameters are preserved during ISR, which lets shared compare links render the actual selected packages instead of the empty state. (#2432)
-
Fixed
package:initso web auth works for claim-package flows, which unblocks users whose npm accounts rely on passkeys-only 2FA. (#2415) -
Fixed the package code sidebar so collapsing one directory no longer gets undone when you expand a sibling directory. (#2393)
-
Fixed replacement suggestions on the compare page so transient fetch failures do not get cached as permanent “no replacement” results. (#2469)
-
Fixed the “Copy as markdown” action on the compare page so it only appears when package data is fully loaded, instead of allowing copies with partial results. (#2506)
-
Fixed compare chart usability with follow-up work for scatter-chart axis highlighting, a clearer legend, and first-load label overlap when the chart tab opens from a hidden state. (#2484, #2493, #2512)
-
Fixed README heading anchor handling for packages that already inject their own header anchors or links, avoiding hydration errors and broken heading rendering. (#2486)
-
Fixed command-palette inputs triggering password managers by adding ignore attributes for non-password fields. (#2466)
-
Fixed Gravatar requests by URL-encoding usernames before building the API path. (#2488)
-
Fixed user profile package filtering to use the
owners.namefacet. (#2513) -
Fixed README style sanitization by defining allowed styles in rendered README content. (#2522)
Other notable changes
-
README fallback loading now probes jsDelivr candidates in small parallel batches and prioritizes the npm registry’s
readmeFilenamewhen available, which reduces slow fallback cases. (#2384) -
API/docs rendering now does more work concurrently while preserving output order, including symbol rendering, markdown processing, and Shiki initialization. (#2382)
-
Various internal cleanup and dependency updates landed, including a
markedmajor bump and workflow maintenance. (#2499, #2500, #2502)
Contributors
@serhalp, @alexdln, @43081j, @cylewaitforit, @ZHYxulei, @jonchurch, @graphieros, @t128n, @Kiwow, @WilcoSp, @ihardlight, @romansp, @WishMelz, @trivikr, @tomaioo, @ghostdevv, @C1ANCYSz, @duowb, @DamengRandom, @ehs5, @bonsak, @Adebesin-Cell, @juliendargelos, @fengmk2, @dragomano, @btea, @VentyCZ
Only a subset of merged work was shown here.