Contributing
This guidelines refers to the main (
master
) that host the v6.x, if you want to contribute to5.x
please read the following link.
We're happy that you're considering contributing!
To help you getting started we've prepared these guidelines for you, any change matter, just do it:
How Do I Contribute?
There are many ways to contribute:
- Report a bug
- Request a feature you think would be great for Verdaccio
- Fixing bugs
- Test and triage bugs reported by others
- Working on requested/approved features
- Improve the codebase (linting, naming, comments, test descriptions, etc...)
- Improve code coverage for unit testing for every module, end to end or UI test (with cypress).
The Verdaccio project is split into several areas, the first three hosted in the main repository:
- Core: The core is the main repository, built with Node.js.
- Website: we use Docusaurus for the website and if you are familiar with this technology, you might become the official webmaster.
- User Interface: The user Interface is based in react and material-ui and looking for front-end contributors.
- Kubernetes and Helm: Ts the official repository for the Helm chart.
There are other areas to contribute, like documentation or translations.
Prepare local setup
Note: The size of the Verdaccio project is quite significant. Unzipped it is about 33 MB. However, a full build with all node_modules installed takes about 2.8 GB of disk space (~190k files)!
Verdaccio uses pnpm as the package manager for development in this repository.
If you are using pnpm for the first time the pnpm configuration documentation may be useful to avoid any potential problems with the following steps.
Note: pnpm uses npm's configuration formats so check that your global .npmrc
file does not inadvertently disable package locks. In other words, your .npmrc
file should not contain
package-lock=false