Contributions are welcome, and they are greatly appreciated! We really want to improve our plugins ✨
This project adheres to the CNCF Code of Conduct. By participating, you are expected to honor this code.
We welcome anything from bugs fixes or new, implemented features. You can create your own Pull request. Once you've submitted a Pull Request (PR), tests will be run and we will have a look at your PR as soon as we can. If we have any comments or questions, we will do so in the PR.
You need approval from one of the core maintainers (in this case, the Backstage team at Axis). Once you have one approval it's ready to be merged, this task is also done by one of us.
As a contributor, here are the guidelines we would like you to follow:
Similar to Backstage upstream, we use api reports generated by API Extractor to help us build better TypeScript library packages. To learn more about api-reports and how to generate them, we refer to the upstream documentation.
Just like Backstage upstream, we use changesets to help us prepare releases. By using changsets we can make sure that the process generating releases is easy, and that every change gets a proper version number.
If you wish to know more about the use of changesets in Backstage, please read the official Backstage documentation about changesets.
- Run
yarn changeset
from the root of the repo - Select which packages you want to include a changeset for
- Select if you wish to use the
minor
,major
, orpatch
impact. Read more here about when to use which impact. - Describe your changes in the generated changeset. Backstage upstream has [a well-written guide](https://github.com/backstage/backstage/blob/master/CONTRIBUTING.md#Writing changesets) for how to write these descriptions.
- Add generated changeset to Git and push this commit to the branch associated with your PR.
All code in our plugin is formatted with prettier. We recommend you to always run the following command to format files:
$ yarn prettier:fix <file>
(or even better, configure your editor to format automatically 💥).
The backstage-plugins repository use ESLint for linting. You can run the following command to packages that have changed since later commit on origin/main.
$ yarn lint