npm-mirror is a utility for mirroring a subset of npm packages from another npm registry. It syncs all of the dependencies for a particular node module and writes them to the local filesystem so that a simple webserver can behave like a commonjs compliant package registry.
- Your webserver must be configured to map root requests to index.json files (like bin/npm-server).
- Git repos will not be synced
npm install -g npm-mirrorDEBUG=* npm-mirror \--master \--manifests /absolute/path/to/target/package.json,/and/another/package.json \--hostname \--root /absolute/path/to/download/packages/// Start webserver rooted in packages directory// For example...npm-server --port 80 --path /absolute/path/to/download/packages/// Give it a whirlcd /path/to/targetnpm install --registry
a fully qualified url for the master registry's root
a comma separated list of fully qualifed filesystem paths to or http urls for manifest files (ie https://npmjs.org/doc/json.html)
a fully qualifed url at which the mirrored packages will be served
a fully qualifed path for where to put downloaded packages
make test runs the test suite. Unit tests live in
test/unit and integration tests live in
test/integration. In order for the integration tests to run successfully, you must be connected to the Internet since packages will be downloaded from http://registry.npmjs.org.