An initiative within the JavaScript community is attempting to offer an alternative to the way developers view npm packages via the web. The project is called npmx and was recently released as an alpha version.
This is according to DevClass. Npmx serves as an alternative interface to the existing npm registry and was created out of dissatisfaction with the current user experience of the official npmjs site.
The emergence of npmx also raises questions about the development of the official npm interface. The npm registry is one of the most important parts of the JavaScript ecosystem, but the web environment in which developers explore packages has seen relatively little visible innovation in recent years. This has created the remarkable situation in which a small open-source project has quickly added features that many developers see as clear improvements.
The open-source project was started by Daniel Roe, who leads the Nuxt team at Vercel. The first code appeared on GitHub at the end of January. Around the same time, Roe started a discussion on the social network Bluesky about the problems developers experience with npmjs. The responses showed that many users are dissatisfied with various aspects of the current website.
Npmx does not change the publication process
Some of the criticism focuses on the publication of packages, a process that some developers consider complex and not very user-friendly. Because npmx only offers a different way of viewing the existing npm registry, it does not change the publication process. The new interface focuses primarily on the way in which information about packages is presented.
According to the initiators, this is also where the greatest opportunity for improvement lies. For example, the current npmjs site includes a tab that allows users to view the source code of packages, but according to users, this feature does not work optimally. For example, browser history is not supported, making navigation with the back button difficult. Other issues that have been pointed out include the lack of a dark mode, limited display of dependencies, and a lack of clear information about support for TypeScript and EcmaScript modules. In addition, some links to GitHub repositories do not function properly when they refer to specific folders within a project.
Emphasis on speed and simplicity
Roe decided to build an alternative browser himself using the Nuxt framework. That project is now available as an alpha. According to the developers behind npmx, the emphasis is on speed and simplicity. The interface should give developers quick insight into relevant data such as the size of an installation, the module format used, and any outdated dependencies. At the same time, work is underway on features that should make it easier to get in touch with the people behind open-source packages.
Interest in the project was immediately high. According to the initiators, within two weeks of publication on GitHub, around a thousand reports, suggestions, and contributions from developers had already been collected.
The npm registry has grown to become the largest software package registry in the world. This is due to the enormous popularity of JavaScript and TypeScript. Originally, npm was managed by an independent company, but in March 2020, GitHub took over the platform. GitHub, which is part of Microsoft, has since focused on combating malware within the registry, among other things. Additional security measures have been implemented, which, according to some developers, has made publishing packages more complicated.