Verdaccio UI is a theme plugin build in React, Typescript and Emotion. It uses Jest and Testing Library for Unit testing.
We use >=yarn
, keep in mind that we use lockfiles and use at least Node v14
to be able to build the project.
Install dependencies
yarn
For development run the following command, it will execute webpack
and verdaccio
to
yarn dev
The configuration file is located on tools/_config.yaml
.
Run linting tooling and test to check your code is clean before commit.
โ ๏ธ The development mode just emulate interaction of the UI development with a real verdaccio server, but it is not the real integration. UI is just a theme plugin dependency in the Verdaccio project.
Don't forget run the following commands before commit and push your code, it will save you time.
yarn lint && yarn test
Remember we follow the the Conventional Commits specification.
๐ค Feel free to participate in code reviews, let us know if you want to participate in this plugin.
Additionally, we recommend run E2E testing before push and verify your changes do not break anything. These command will run in our CI anyway.
yarn build && yarn test:e2e
yarn build
will build with webpack the production files.
Thanks to the following companies to help us to achieve our goals providing free open source licenses.
Support this project by becoming a sponsor. Your logo will show up here with a link to your website. [Become a sponsor]
Thank you to all our backers! ๐ [Become a backer]
This project exists thanks to all the people who contribute.
If you have any issue you can try the following options, do no desist to ask or check our issues database, perhaps someone has asked already what you are looking for.
Translations are handled locally. I18n files can be found in the folder i18n/translations/*
of this repository. We would love to provide translations from other languages, embracing all our users, but unfortunately we cannot do this without your help. Would you like to help us? Please feel super welcome to add a locale by opening a pull request.
Your PR should contain:
1 - A json file in the folder i18n/translations/*
with the translations. The file must be named according to the new added language
2 - The files i18n/config.ts
and LanguageSwitch.tsx
updated with the new language. Please see the current structure
3 - The other translations containing the new language in the language of the file. Example:
New language: cs_CZ
The file pt-BR
should contain:
"lng": {
...,
"czech": "Tcheco"
}
4 - A SVG flag of the new translated language in the the folder src/components/Icon/img/*
. You maybe want to compress the svg file using https://jakearchibald.github.io/svgomg/
Verdaccio is MIT licensed
Juan Picado ๐ ๐ป ๐ ๐ ๐ ๐ง |
Sergio Herrera ๐ ๐ง |
Daniel Ruf ๐ก๏ธ ๐ ๐ง |
Priscila Oliveira ๐จ ๐ป ๐ง |
Jiลรญ Michel ๐ป ๐ง |
jason ๐ ๐ป |
Ayush Sharma ๐ง ๐ป |