zipread
zipread is a ZIP file reader designed for speed and memory efficiency. Unlike other modules, it doesn't read the whole file into memory and uses native ZLIB functions for decompression.
var zipread = ;var zip = ; var contents = zip; // Or for async version:zip;
zipread/hooks
zipread also provides a set of fs hooks to require node modules directly from ZIP.
Create a modules archive:
$ $ rm -r node_modules
Require a module explicitly:
; // Install hooks; // Load 'request' from mods.zip
Or implicitly by setting NODE_PATH:
$ NODE_PATH=./mods.zip node ./yourapp.js
In this case, you still have to require the hook but the rest can be untouched:
;;
A good use case for this would be shipping desktop applications. For example, Windows doesn't like long paths and putting your huge node_modules directory into a single archive should solve this problem.