backstage-plugin-announcements
is MIT licensed and accepts contributions via
GitHub pull requests. This document outlines some of the conventions on
development workflow, commit message formatting, contact points, and other
resources to make it easier to get your contribution accepted.
Contributions are welcome, and they are greatly appreciated! Every little bit helps, and credit will always be given. ❤️
The official support channels, for both users and contributors, are:
- GitHub issues
Pull Requests (PRs) are the main and exclusive way to contribute to the project.
Fork, then clone the repository:
git clone [email protected]:your_github_username/backstage-plugin-announcements.git
cd backstage-plugin-announcements
git remote add upstream https://github.com/K-Phoen/backstage-plugin-announcements.git
git fetch upstream
yarn install
A standalone development version of both the frontend and backend plugins are included in this repository. They can be started as follows:
yarn dev # starts both the frontend and the backend in parallel
yarn start # starts the frontend only
yarn start-backend # starts the backend only
Start by creating a new branch for your changes:
git checkout main
git fetch upstream
git rebase upstream/main
git checkout -b new-feature
Make your changes, then ensure that yarn lint
and yarn test
still pass. If you're satisfied with your changes, push them to your fork.
git push origin new-feature
Then use the GitHub UI to open a pull request.
Your changes are much more likely to be approved if you:
- add tests for new functionality
- write a good commit message
- maintain backward compatibility
We use changesets in order to prepare releases. To make the process of generating releases easy, please include changesets with your pull request. This will result in a every package affected by a change getting a proper version number and an entry in its `CHANGELOG.md.
Any time a patch, minor, or major change aligning to Semantic Versioning is made to any published package in plugins/
, a changeset should be used.
In general, changesets are not needed for the documentation, build utilities or similar.
- Run
yarn changeset
- Select which packages you want to include a changeset for
- Select impact of change that you're introducing, using
minor
for breaking changes andpatch
otherwise. - Explain your changes in the generated changeset. See examples of well written changesets.
- Add generated changeset to git
- Push the commit with your changeset to the branch associated with your PR
For more information, checkout adding a changeset documentation in the changesets repository.