Welcome! We’re excited to have you join the community. InterMine integrates biological data,
but you don’t have to be a biologist to contribute to InterMine. Some of our entry-level
issues only require knowledge of the relevant programming language, but others may require more in-depth
understanding.
If you’d like to learn a bit more about InterMine, we have a nice 5 minute video for you to sum things up.
If you prefer textual learning resources, you could look at the
InterMine documentation
for a technical overview of InterMine’s server, the
user documentation
a for a biologist/bioinformatician oriented overview, or you could hop straight into our
Python tutorial
to learn more about querying our data model.
You can also take a look at the
Developers section of this site.
New to open source?
Perhaps you’ve never made a pull request before, or you’ve used git a little but never
collaboratively? Have a look through the open source guide to submitting contributions to give you a
good idea of how things work.
Some of our issues are marked first-timers-only - these are issues that may be relatively
straightforward, where we’ll happily walk you through steps you’re unsure about. (psst, you can also
search GitHub for all issues marked with this label, not just InterMine).
Contributing Guidelines
InterMine has a large variety of repositories in a number of different languages. We have a list of
issues marked up with labels such as “Help Wanted”, “Beginner”, “Good first bug” that you can choose
from, but you’re welcome to offer help on any issue if you think you understand what’s going on and
what needs to be done.
Picking up tasks
If you find an issue that interests you, here’s what to do. Note that one of the key tasks is
communication!
- Read through the issue and make sure you understand what to do. If you need to clarify
details, it’s okay to ask in the issue.
- Once you feel you’re ready to work on the issue, comment on the issue to let us know
you’re working on it! This is important to ensure that no-one else picks up the ticket and works
on it at the same time.
- Work on the issue - make sure to conform to any guidelines there may be in the repo if
relevant, e.g. write tests and make sure the pass in CI, comment and document your code, make
sure the style formatting checks pass, etc. Ask for advice if needed.
- When you think your work is ready - make a pull request! You’re a star! ⭐️
- We will review your work, checking for quality and correctness. It may take us a little
while to review it, depending on what else is going on at the time. We may have feedback or
changes required before we can merge your pull request.
- Once it’s merged - bask in glory. You’ve just committed code to an open source project!
Interested in something bigger than an issue?
- Are you a student? Watch our
blog
,
mailing list
,
or
twitter
account to find out more about working with us during
Google Summer of Code
(usually around feb/march every year).
Visit the InterMine GSoC site
.
- If we’re hiring, we generally announce vacancies on our
mailing list
.
- If you have other ideas you’d like to discuss, feel free to contact us to discuss further.
General guidelines
- In busy periods, we may reassign inactive issues (with no PRs/comments/commits) after 3-4 days.
Please don’t feel bad if this happens! You’re still welcome to contribute to other issues when
you have the time.
- Be nice. Unpleasant behaviour in our community will not be tolerated. InterMine has a Code of Conduct
that all contributors are expected to follow.
- If you find documentation is unclear or missing, make a PR to fix it once you know what needs to
be done.
- If an individual repository has contributing guidelines or style guidelines, they override any
advice given on this page.
- In need of help? Try visiting our contact
us pages for ways to get more help. Also, feel free to pitch
in if you think you know the answer to queries on the
mailing list
or
chat!
- Thank you for being awesome!