11 ms·
Anyone can make a mirror. That's the glory of CouchDB. Just kick off replication and BOOM you've got the npm registry. There are community mirrors in Europe (ht
by indexzero 13y ago
Anyone can make a mirror. That's the glory of CouchDB. Just kick off replication and BOOM you've got the npm registry. There are community mirrors in Europe (http://npmjs.eu http://npmjs.eu) and Australia.
If you want to run or use a community mirror that's totally great!
npm config set registry http://my.awesome.community.mirror http://my.awesome.community.mirror
- applecore 13y agoI'm surprised they're using CouchDB and not MongoDB.
- cleverjake 13y agoa lot of the central node community started on couch
- twerquie 13y agoWhy?
- nawitus 13y agoCouchDB has better replication support (e.g. multi-master, MVCC).
- nathan7 13y agonpm is pretty much the prime use-case for CouchDB. REST API out of the box, replication is a core feature and not just a scaling feature (multi-master, MVCC) and the validation/access control is pretty much made for it. The npm registry is implemented as a CouchApp for a reason.
- remon 13y agoI agree that from a functionality perspective this is largely true, at least on paper. That said, if running costs become a significant bottleneck CouchDB becomes a less obvious choice. Sometimes there's a reluctance to migrate from one technology to another as requirements change over time but this seems one of those occasions where exactly that step is required. Sometimes it's good to take a step back, look at your current requirements in terms of cost and performance and determine what technology best suits your needs. I would question the know-how and objectivity of anyone that would land on CouchDB/node.js in this instance.
- nathan7 13y agoThere's no node involved in the registry itself. This is purely CouchDB.
- addandsubtract 13y agoThis is great and all, but when Heroku relies on the main npm registry to be up (when it's not) you're screwed.
- twalling 13y agoHeroku customers can always clone the nodejs buildpack and simply point the npm registry at another mirror.
- nfriedly 13y agoI've started to always check in my node_modules directory. Heroku automatically runs `npm rebuild` in that case, so native modules always work. I've found it to be both faster and more reliable.