dominictarr / npmd

MIT License
450 stars 37 forks source link

premium offline experience #88

Open dominictarr opened 9 years ago

dominictarr commented 9 years ago

to make this work offline really really well, here is what I want to happen (I havn't implemented this yet because i've been busy with other things)

create a lite registry server - this would be a back ground process which tailed all the npm metadata into a local database (leveldb, of course), not all modules are in the registry (some are on github) so it would need to cache those modules to resolve it. Luckily this is already implemented in npmd-cache. Basically this server would just use npmd-cache, and a local database.

The lite registry would expose a resolve service, (see npmd-resolve) it would give you a tree of modules to install, but it would only look in it's local cache/db so that it doesn't need to go over the network.

You could run this service on your laptop, just for your self, or you could run it on the local network for a team.

dominictarr commented 9 years ago

maybe you could even "follow" a user or package, and have the lite-registry eagerly cache new publishes from that user/package so you can always install the fresh stuff

DamonOehlman commented 9 years ago

Nice - It's highly likely that I'll get distracted by something shiny on the weekend, but if I do get some time to code for the betterment of JS developers everywhere I'll take a look at this at CampJS :)

dominictarr commented 9 years ago

ah, yeah a lite registry like this would be perfect for something like campjs