npm
Host private npm packages alongside your NuGet packages in the same organisation. Feedz supports scoped packages, standard npm authentication, and the full npm CLI workflow.
Repository URL
Your npm repository URL follows this format. Note that the trailing slash is required:
https://f.feedz.io/{organisation}/{repository}/npm/
Scopes
npm supports multiple registries using scopes — string identifiers that group related packages into a namespace. You configure one scope per Feedz repository. npm will route packages in that scope to Feedz and fall back to the public npm registry for everything else.
To create a package in a specific scope, prefix its name in package.json with @<scope>/. For example, for scope my-company and package my-package, the name would be @my-company/my-package.
Authenticating
Use the adduser command to authenticate and associate your scope with the repository. Use any username and email when prompted, and enter a personal access token as the password. The --always-auth flag is required for private repositories so credentials are sent on every request:
npm adduser \
--registry https://f.feedz.io/my-org/my-repo/npm/ \
--scope my-company \
--always-auth
--always-auth will cause search and install to fail with 401 errors.Publishing packages
Once authenticated, publish using the scope you configured:
npm publish my-package-1.0.0.tgz --scope my-company
The maximum allowed package size is 100 MB.
Installing packages
Install packages by specifying the full scoped name and version:
npm install @my-company/my-package@1.0.0
Searching packages
npm search --scope my-company my-pack