Contributions are welcome and greatly appreciated! We are committed to improving our plugins ✨
These contributing guidelines explain:
- How to contribute effectively for optimal communication
- The conventions we would like you to follow
If you have any questions, please let us know!
This project adheres to the CNCF Code of Conduct. By participating, you are expected to honor this code.
We welcome anything from bug fixes to new features. Please start by creating an issue in our repository. The Axis Backstage team will respond as soon as possible regarding:
- Whether this is an implementation we want in our main repository
- If there are any points to discuss before implementing the feature
- Who should implement the feature
Once the discussion in the issue is complete, you are welcome to create a Pull Request (PR). We follow GitHub's best practices for creating pull Requests. Please review these guidelines if you are not familiar with them.
In addition, provide a clear title for your PR that explains the change.
After submitting a PR, tests will run and the team will review it as soon as possible. If there are any comments or questions, we will communicate through the PR.
You need approval from one of the core maintainers (the Axis Backstage team). Once you have approval, the PR is ready to be merged. This task will also be 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