The Rivet repository is a monorepo. Each component has its own README.md including information on how to develop it.
It's recommended to use just to run development commands, though not required.
It's recommended to install the Nix package manager in order to build a consistent environment.
Once installed, run nix-shell
to build your development environment.
- Fork and Clone: Fork the repository and clone it locally.
- Branch: Create a feature or bugfix branch.
- Pull Request:
- Provide a clear title and description. The title must follow Conventional Commits. These are used for generating our changelogs with Release Please.
- Link the related GitHub issue (if applicable).
- Validate that required checks pass. We ensure that Rivet's required checks run within < 5 minutes.
- Branching and Commits:
- Use Graphite for creating and managing branches.
- Follow the Conventional Commits specification when creating branches.
- Pull Request:
- Push your branch to the repo and request a review through Graphite.
- Link related Linear issues in your PR body using the "magic words"
Fixes XXX-123
. More information.- Manually mark your issue as Ready to Merge when ready.
- Validate that required checks pass. We ensure that required checks run within reasonable time.
- Merging:
- Once approved, it's up to you to merge your commit. If deploying the frontend, make sure to monitor the changes from Sentry before going offline.
- Manually mark your issue as Complete once finished.
# Release latest
just release-latest VERSION
# Release no latest (including rc)
just release-nolatest VERSION