Contributing to Cthulhu
Interested in contributing to Cthulhu? Welcome, we’re excited to have you onboard!
If you’d like to make us aware of a bug, or request a new feature, the best option is to open an issue on GitHub.
To become more actively involved, feel free to browse the issues page and decide whether you would like to work on a bug or new feature (or even better, add a new automated test). If you’re planning to work on a major new feature, we’d encourage you to reach out to the lead developer to give a heads-up: ryanjamc@umich.edu
Cthulhu uses the following development process (inspired by a graphic from Natasha Batalha):
When you first install Cthulhu, you’ll be on the main branch. The main
branch contains the current official release of the code.
All major developments happen on the dev branch, where new versions of
Cthulhu are developed and tested before being merged into main.
The one exception is fixes for any major bugs, for which a temporary branch is created and merged into main.
To work on a new feature, you’ll first want to switch from main to
dev. You can then create a branch off dev called something like
tremble_at_my_amazing_new_feature. While you code, please make regular
commits as you flesh out the feature. Once you’re done, open a Pull Request on GitHub to request
merging your new feature into dev. This will trigger an automatic suite
of tests to verify that your new feature didn’t accidentally break something.
VS Code has a handy guide that covers how to handle git branches, make commits, and more.