-
Notifications
You must be signed in to change notification settings - Fork 45
Contribution
We love Pull Requests! Your contributions help drive development.
Thanks for your interest in supporting our mission - to develop software that addresses needs in cancer biology and precision medicine. Both software development and cancer research require multi-disciplinary expertise and collaboration, and we welcome any and all help whether it be submitting issues, writing docs, making code changes, or even linking/developing entire features. If you haven't already, start by signing up for a GitHub account.
You can clone this repository locally from GitHub using the "Clone in Desktop" button from the main project site, or run this command in the Git Shell:
git clone https://github.com/FredHutch/Oncoscape.git Oncoscape
Or if you're using SSH
git clone git@github.com:FredHutch/oncoscape.git Oncoscape
If you want to make contributions to the project, forking the project is the easiest way to do this. You can then clone down your fork instead:
git clone https://github.com/MY-USERNAME-HERE/Oncoscape.git Oncoscape
Or if you're using SSH
git clone git@github.com:MY-USERNAME-HERE/Oncoscape.git Oncoscape
After doing that, follow the Installation to install, test, and run the software package.
Check out our cheatsheet for tips and tricks for some common git commands.
Architecture Oncoscape’s client side architecture is based on the Angular JS framework. Angular provides a wealth of tutorials, active user community and documentation to the Oncoscape’s contributors. Please refer to the following links to learn more about Angular. For information on our specific implementation of Angular see the Files + Folders section below.
We have a help wanted
tag on our issue tracker to indicate tasks which contributors can pick up.
If you've found something you'd like to contribute to, leave a comment in the issue so everyone is aware.
When you're ready to make a change, create a branch
off the develop
branch. We use develop
as the working branch for the repository with the most recent contributions and the master
branch as our production version. We found these two links very helpful develop/master branching model and github workflow
If you make focused commits (instead of one monolithic commit) and have descriptive commit messages, this will help speed up the review process.
Oncoscape relies on testing to ensure existing behavior is unchanged. This can be easily checked through the >make test
command in the r_modules directory. If you're adding new features, please add some
tests to your code and include it in the testing heirarchy so your code is safe and secure.
You can publish your branch from GitHub for Windows, or run this command from the Git Shell:
git push origin MY-BRANCH-NAME
Once your changes are ready to be reviewed, publish the branch to GitHub and open a pull request against it.
Some tips with pull requests to help the process:
- Contribute your work-in-progress by adding the
[WIP]
prefix to the title. This way we can give feedback early and facilitate the inclusion of your updates. - use checklists to indicate the tasks which need to be done, so everyone knows how close you are to adding a new awesome component.
- add comments to the PR about things that are unclear or you would like suggestions on
Don't forget to mention in the pull request description which issue/issues are being addressed.
Some things that will increase the chance that your pull request is accepted.
- Follow existing code conventions.
- Include unit tests that would otherwise fail without your code, but pass with it.
- Update the documentation, the surrounding one, examples elsewhere, guides, whatever is affected by your contribution
Oncoscape