I recently read on The Changelog a short post about a tool called Go Package Store.
An app that displays updates for the Go packages in your GOPATH.
It has a simple interface that lets you see and update Go packages. According to the Changelog, “Every package ecosystem needs this.” I loved the idea and decided to replicate the project for npm.
Presenting npm Package Store
A web app that displays updates for your globally installed npm modules. Inspired by Go Package Store.
> git clone [https://github.com/travishorn/npm-package-store.git]( ) > cd npm-package-store > npm start
Then just go to http://127.0.0.1:3000
You can modify the port npm Package Store runs on with the PORT environment variable.
There’s plenty of room for improvement on this project.
I’ve already published it as an npm module, but similar to Go Package Manager, I’d like to make this into a binary that can be installed and executed globally, instead of a cloned repository.
The web app should show the changelog between the currently installed version and the latest version. npm tracks certain changes in the package metadata, but this doesn’t include commit messages. npm Package Store will have to follow the repository property in package.json and query GitHub’s API to see changes.
It should be possible to search through installed modules.
It should also be possible to search and install modules in the npm registry.
I’d also like to offer more options than just “update.” These might include “uninstall”, “downgrade”, etc.
See the code and contribute on GitHub: https://github.com/travishorn/npm-package-store
Originally published on my old blog on September 29, 2014.