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
https://github.com/npmx-dev/npmx.dev has a comparison
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://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