Self Hosting 3rd party registries & adding/removing 3rd party registries into npm
Open
Nobody has claimed this yet.
- Dominant language
- JavaScript
- Stars
- 10.1k
- Forks
- 4.7k
- Avg merge
- 2d 2h
- Merged PRs (30d)
- 19
Description
- The ability to self host your own npm registries which will require releasing npm to be fully open source and instructions on how to deploy your own npm registry to self host your own package and optionally allow others to host their packages on the 3rd party registry.
- The ability to add/remove registries in npm. This will require new commands such ad addregistry, removeregistry and listregistry.
- The ability to download a package from a 3rd party registry. the install command must allow domain names such as npm install example.com:moment or npm install example.com/moment/moment.
- The ability to have a default registry set and the ability to change the default registry. By default the default registry will be npmjs.com, the official registry but to have the ability to change this with a command such as changedefaultregistry. The user is able to download packages from the default registry without having to put the domain name in front of it, for example if the default registry is npmjs.com, the user can enter npm install bootstrap and not need to enter npm install npmjs.com:bootstrap.
- The ability to have packages require dependencies from packages on different registries.
Such a feature will allow for decentralisation, private registries and the ability to truly self host your own packages.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
The issue names no files, tests, or entry points. Start by surveying the npm CLI command implementations and registry resolution code, then break the proposal into separately scoped changes. Done would require defined behavior and tests for registry management, selecting registries during install, default registries, and cross-registry dependencies.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- javascript, nodejs
- Domain
- cli, tooling
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 15/100