NPMX – a fast, modern browser for the NPM registry (npmx.dev)

140 points by slymax 20 hours ago

skybrian 17 hours ago

Here's one feature they have that seems important:

> It's good npmx.dev shows git and https dependencies. I still think it's crazy npmjs.org doesn't.

https://bsky.app/profile/dsherret.bsky.social/post/3mer2diwj...

hobofan 7 hours ago

Damn, I didn't even know that npm allows publishing dependencies that have git/https dependencies to the public registry.

insin 9 hours ago

A clear miss from npmjs.org on that, but I'm trying to think of when I've ever used it as a primary source for what dependencies a package has, or really even... anything at all. I only end up on it if I'm in a hurry and accidentally click an npmjs link instead of (usually) a GitHub link after using a search engine.

danielroe 16 hours ago

npmx maintainer here! a few answers to questions i see:

we haven’t launched yet! we’re building openly but aiming for march 3. as is par for the course, hn gets the scoop.

i made the first commit two weeks ago, so it’s very new. but we’ve had 900+ PRs and 170+ contributors in the last fortnight… because this is something we care about.

having said that, i’m taking notes about what is and isn’t intuitive

npmjs remains the source of truth for the registry, which is why we get our data from there

but along the way we add a lot of features, like: - claiming new packages from the ui - batch admin operations for your orgs, teams and packages - total install size, vulnerabilities and deprecations for your transitive dependencies - generated docs for packages - linkable package contents - and more

Sammi 9 hours ago

The visual hierarchy seems very flat and inaccessible to me. Everything is monochrome and looks too similar. I have a hard time differentiating between sections.

There are many ways to get more visual hierarchy and I wish you make use of them.

danielroe 9 hours ago

thank you for the feedback!

I will be thinking closely and I really prize all thoughtful feedback like this.

we're currently on a collective holiday: https://npmx.dev/recharging. but when we're back, you would be really welcome to join us and make it better - if you want!

it's open source at https://github.com/npmx-dev/npmx.dev

dzonga 6 hours ago

thanks - through your repo - I have discovered a few dependencies I would like to adopt for my work

tcper 16 hours ago

Do you have your own dependency resolution algorithm? Can we have the most lightweight node_modules directory?

danielroe 16 hours ago

we do have an algorithm to calculate total install size

it’s not _exactly_ the same as if you install with npm and check the size of your node_modules but it’s a pretty good proxy

having said that, there’s room to make it better

hdjrudni 19 hours ago

But why?

npmjs.com is not slow and not something I need to interact with very often.

And npmjs.com is still the authority when it comes to publishing packages, no? So I'd still have to use it.

xhcuvuvyc 17 hours ago

Because they wanted to and Claude didn't tell them not to. Why even ask questions like this at this point.

wartijn_ 9 hours ago

The website has an about page that explains some of the reasons why this project exists. The first heading in the readme of their repo is "Vision". The creators of this project are people with a track record of creating popular, high quality, useful Javascript projects.

I'd say the probability that some thought has gone into this project it pretty high. Your reply stating that this was created without any though or effort is, ironically the least thoughtful, laziest and least useful response possible.

indemnity 16 hours ago

In the age of LLMs I think we are going to see a Cambrian explosion of software.

Me personally, I’m writing tools for myself wouldn’t have bothered with before due the the time investment needed.

port11 14 hours ago

The prolific inventor’s dilemma. But to be fair developers have been making whatever they want since the beginning. Sometimes there doesn’t have to be a ‘why?’.

isodev 14 hours ago

Haha this. I understand the appeal of "but I can probably roll my own" and "Oh that's a good idea, let's jump into coding" but pre-vibe bots, the effort required would make folks stop and think before jumping into it - is it really a good idea? should I do it just because I can? what problem is it really solving? Who will use this? etc.

pier25 18 hours ago

I almost never use npmjs.com.

When I do it’s just to click on the repo link.

tmvnty 12 hours ago

I just do ghub.io/<package-name>

atfzl 8 hours ago

npmjs.com search input doesn't even have proper throttling/debounce. If you type fast, there is a high chance that you get result of the partial input that you entered than the complete one. Ideally they should discard the response for the old partial search if there is a new one.

riedel 13 hours ago

nickradford 18 hours ago

It is really annoying if you have a package that is relatively new to the platform, and you type in the exact package name, that package is not reliably the first result.

Minor edge case, but infuriating if you want to check your own packages quickly (without needing to navigate menu > packages > YOUR_PACKAGE).

Still agree with you though, who is npmx actually for?

ireadmevs 16 hours ago

Whenever I know the name of the package I want to see, I always type in the URL directly: npm.im/[package-name]

brycelarkin 19 hours ago

npmjs search is very slow

DeepYogurt 19 hours ago

how often does anyone use it though?

65 19 hours ago

I mean are we really arguing over milliseconds here? I have never in my life had the thought "NPM search is too slow, I need a faster solution"

I have had the thought "NPM search sorted by downloads this week is giving me irrelevant packages" - but I'm not sure this tool solves that.

blue_pants 17 hours ago

skydhash 19 hours ago

abejfehr 8 hours ago

A valid use case I can think of is if npmjs.com is blackholed by your company to prevent supply chain attacks

jauntywundrkind 16 hours ago

It sparks more joy than the old one and buddy, that's for frelling enough damn it. Whinge out!

Awful comment. Your comment is bad and should be ashamed.

Use it and disagree! Tell me it in fact does not spark more joy! This just seems pretty clear, ya'll.

It's just generally vastly nicer. I love that file exploration of packages doesn't feel like a last afterthought before leaving the solar system forever.

jasonjmcghee 18 hours ago

Cynically, if you can attract a representative sample, you could aggregate and sell analytics data.

Another could be to have an "alternatives" section based on semantic similarity and / or some other features that have signal.

networkcat 14 hours ago

I don't think npmx has better UI/UX than npmjs.com. It could even be said to be worse. The npmx page doesn't have any other colors, it's all gray, and the page has too many elements that are too cluttered. You can compare these two pages:

https://npmx.dev/package/vue

https://www.npmjs.com/package/vue

Decide for yourself which UX is better.

hdjrudni an hour ago

I really like how the did the sidenav scrolling.. I was trying to do the same thing on one of my sites the other month and couldn't figure it out. It's not merely sticky, if you make your window too small for it to fit, it does interesting things.

smarx007 13 hours ago

I think that npmjs uses colors too much to the point of irrelevance. Why are links in the README red? Why is the code tab red? Why is the download graph purple?

Compare your npmx link to vue to https://npmx.dev/package/node-red-contrib-rtc-alert-node . This package uses deprecated and vulnerable deps and npmx correctly uses color to draw attention to it. And because the npmx page is normally monotone, the use of color actually draws your attention.

Regarding clutter - I agree.

pveierland 18 hours ago

- Certain pages load but are not able to load content, e.g. https://npmx.dev/package/@storybook/addon-docs fails to load content with:

> `[nuxt] Cannot load payload /package/@storybook/addon-docs/_payload.json?c459501f-8eb7-49c9-be9c-4a197fa35a39 Error: Invalid input`

- Scrolling fast on Firefox + Chrome is broken and resets the search results page to start.

- Pressing up/down arrows should navigate search item results instead of focusing individual tag elements.

isodev 18 hours ago

I don’t get it. What does it do? How can I trust it over simply visiting https://www.npmjs.com/ (which is perfectly fine to browse)?

Edit: it wants me to connect to the “atmosphere” - is this the Bluesky App Store thing? I really don’t see how linking my socials to npm search makes sense.

uncenter 5 hours ago

There is no "Bluesky App Store" thing. The Atmosphere integration is an optional feature that adds a social layer on top of the registry, using the AT Protocol.

iamkonstantin 17 hours ago

The word “browser” in the title also tripped me to think about an actual browser

phildenhoff 16 hours ago

But it is a browser -- just not a web browser

swyx 15 hours ago

skybrian 19 hours ago

I'm not sure what features I'm supposed to notice that are better, but having built-in API docs and source code browsing is nice. (Though slightly laggy.)

Nit: there are distracting animations, such as on the weekly download graph.

wellf 17 hours ago

Confusing name as npx exists (exexutes npm package without install)

uncenter 5 hours ago

The name is npmx not npx but I see where you are coming from.

meetpateltech 17 hours ago

There’s also https://v1.run/ (packrun.dev) experimenting with an npm registry for agents that adds package scoring and MCP integration for AI coding assistants.

adithyareddy 17 hours ago

Really fun / cool project!

I've always defaulted to using https://yarnpkg.com/ to search for packages cause the npmjs.com search is so slow, but while the yarnpkg.com search is super fast, actually clicking on a package and seeing the details page takes forever.

This is super fast for both search and the details page, and it's super keyboard friendly which makes it even faster to use in practice. Definitely going to become my go-to search now. Love it, thanks for building it!

souenzzo 5 hours ago

Feature request: Im not able to compare two versions of the same package

vldszn 5 hours ago

Looks awesome! Definitely step in a right direction.

tl2do 17 hours ago

The typeahead search speed is genuinely impressive. I was typing package names and the results were appearing before I'd finished the keystroke—that's the kind of responsiveness you usually only see with native applications.

As someone who spent a year obsessing over performance in a .NET MAUI app (IMAP processing, background execution, API latency), I know how hard it is to shave milliseconds off search. The npm registry is massive, and you're clearly doing something right on the indexing or caching side.

Are you using client-side filtering with a pre-built index? Server-side with some clever caching strategy? I'm genuinely curious about the architecture choices that got you to "uncannily fast" territory—especially compared to the official npmjs.com search.

Whatever you're doing under the hood, it shows. Performance is a feature.

freakynit 16 hours ago

Whats even crazier is if you click on thr author link, there other packages are listed almost instantly. Crazy damn speed. Beautiful to look at too.

tl2do 8 hours ago

I agree. I agree.

Retr0id 17 hours ago

If I scroll too far down the search results it snaps back to the top. The typeahead search is almost uncannily fast though.

djdnndj 19 hours ago

I like it, don't get the negativity in this thread

oenton 17 hours ago

I think it looks cool. I like the mouseover effects. I still echo others concerns e.g. npmjs.com is the ultimate authority of what NPM packages exist.

Did you create this? If not how did you come across it?

boltzmann64 16 hours ago

I hate the trend of moving away from being able to search packages from the command line to searching inside a bloated web browser. It had a happened with PyPI. And now npm. Please stop this madness.

beart 16 hours ago

What has moved away? You can still use `npm search` just fine.

Mikhail_Edoshin 15 hours ago

Browsing is not search though. But I must say that modern browsing is not browsing either, it's search-centered. It would be great to be able to actually browse things like in a store or a library.

lewissheridan 8 hours ago

Nice job

spiderice 19 hours ago

Aaaand, it's down. Is it's inability to handle light load what makes it modern?

cdaringe 19 hours ago

it’s modern, i heard

khelavastr 17 hours ago

cool