Skip to content

Latest commit

 

History

History
223 lines (137 loc) · 15.2 KB

CONTRIBUTING.md

File metadata and controls

223 lines (137 loc) · 15.2 KB

Contributing to the BIDS Starter Kit

🎉🎈🍰 Welcome to the BIDS Starters Kit repository! 🍰🎈🎉

💫🐥☀️ We're so excited you're here and want to contribute. ☀️🐥💫

The point of this starter kit is to welcome new users and contributors to the BIDS community. We hope that these guidelines are designed to make it as easy as possible to get involved. If you have any questions that aren't discussed below, please let us know through one of the many ways to get in touch.

Table of contents

Been here before? Already know what you're looking for in this guide? Jump to the following sections:

Joining the community

BIDS - the Brain Imaging Data Structure - is a growing community of neuroimaging enthusiasts, and we want to make our resources accessible to and engaging for as many researchers as possible.

We therefore require that all contributions adhere to our Code of Conduct.

How do you know that you're a member of the BIDS community? You're here! You know that BIDS exists! You're officially a member of the community. It's THAT easy! Welcome! 😂🙌

Get in touch

There are lots of ways to get in touch with the team maintaining the BIDS Starter Kit.

If you're here during summer 2018 🍦🌴, you should reach out to our lovely Google Summer of Code student Patrick Park. He'll be monitoring all the channels above and it would really help his project along if you said hello and passed along any feedback you have 💜. Don't be shy, the newer you are the more valuable your feedback is 👍

Two github cats working together

Contributing through GitHub

git is a really useful tool for version control. GitHub sits on top of git and supports collaborative and distributed working.

We know that it can be daunting to start using git and GitHub if you haven't worked with them in the past, but the BIDS Starter Kit maintainers are here to help you figure out any of the jargon or confusing instructions you encounter! ❤️

In order to contribute via GitHub you'll need to set up a free account and sign in. Here are some instructions to help you get going. Remember that you can ask us any questions you need to along the way.

Writing in markdown

GitHub has a helpful page on getting started with writing and formatting on GitHub.

Most of the writing that you'll do will be in Markdown. You can think of Markdown as a few little symbols around your text that will allow GitHub to render the text with a little bit of formatting. For example you could write words as bold (**bold**), or in italics (*italics*), or as a link ([link](https://https://youtu.be/dQw4w9WgXcQ)) to another webpage.

Where to start: wiki, code and templates

Wiki (link)

We hope that the easiest place to find information about BIDS is the starter kit wiki.

You only need to be logged in to GitHub to edit the wiki. So, there's no need for a pull request if you just want to fix a typo or add a useful link!

Here's a useful introduction to GitHub wikis. Have a read through the pages that already exist in the wiki and please EDIT AWAY! 💪💥✨

Code (link)

This repository is under development, but we hope that it becomes a useful place for people to share and find small snippets of code that are useful for getting started with BIDS.

To contribute to the codebase you'll need to submit a pull request. Check out our guidelines below.

Templates (link)

This repository is under development, but we aim to have two templates for each BIDS sidecar file: one with a full example (all required/recommended/optional fields), and one with a minimal example (only required fields).

To contribute a template you'll need to submit a pull request. Check out our guidelines below.

Where to start: issue labels

The list of labels for current issues can be found here and includes:

  • help-wanted These issues contain a task that a member of the team has determined we need additional help with.

    If you feel that you can contribute to one of these issues, we especially encourage you to do so!

  • Question These issues contain a question that you'd like to have answered.

    There are lots of ways to ask questions but opening an issue is a great way to start a conversation and get your answer. Ideally, we'll close it out by adding the answer to the wiki!

  • good-first-issue These issues are particularly appropriate if it is your first contribution to the BIDS Starter Kit, or to GitHub overall.

    If you're not sure about how to go about contributing, these are good places to start. You'll be mentored through the process by the maintainers team. If you're a seasoned contributor, please select a different issue to work from and keep these available for the newer and potentially more anxious team members.

  • Enhancement These issues are suggesting new features that can be added to the project.

    If you want to ask for something new, please try to make sure that your request is distinct from any others that are already in the queue (or part of the starter kit!). If you find one that's similar but there are subtle differences please reference the other enhancement in your issue.

  • Documentation These issues relate to improving or updating the documentation.

    These are usually really great issues to help out with: our goal is to make it easy to understand BIDS without having to ask anyone any questions! Documentation is the ultimate solution 🏆

  • Community These issues relate to building and supporting the BIDS community.

    BIDS won't work if people don't use the standard! YOU are the BIDS community, and we want to know how best to support you.

  • Bug These issues are reporting a problem or a mistake in the project.

    The more details you can provide the better! If you know how to fix the bug, please open an issue first and then submit a pull request

  • Closing Soon These issues are closing soon...get your opinions in asap!

    This label is mostly used to indicate that an old issue is about to be closed, or that a final decision is going to be made on a long running discussion. Speak now....or open a new issue when this one is gone 😜

  • Funding These issues relate to finding money money money to keep building the project

    We'd love to hear about any opportunities for funding to keep building the BIDS Starter Kit 💰

  • Logistics These issues relate to project management for the BIDS starter kit

    We like to model best practice, so the BIDS Starter Kit itself is managed through these issues. We may occasionally have some to coordinate some logistics.

Making a change with a pull request

We appreciate all contributions to the BIDS Starter Kit. THANK YOU for helping us build this useful resource. ✨🌟💫

👉 Remember that if you're adding information to the wiki you don't need to submit a pull request. You can just log into GitHub, navigate to the wiki and click the edit button.

If you're updating the code or the templates, the following steps are a guide to help you contribute in a way that will be easy for everyone to review and accept with ease 😎.

1. Comment on an existing issue or open a new issue referencing your addition

This allows other members of the BIDS Starter Kit team to confirm that you aren't overlapping with work that's currently underway and that everyone is on the same page with the goal of the work you're going to carry out.

This blog is a nice explanation of why putting this work in up front is so useful to everyone involved.

2. Fork the BIDS Starter Kit repository to your profile

This is now your own unique copy of the BIDS Starter Kit. Changes here won't affect anyone else's work, so it's a safe space to explore edits to the code!

Make sure to keep your fork up to date with the master repository, otherwise you can end up with lots of dreaded merge conflicts.

3. Make the changes you've discussed

Try to keep the changes focused. If you submit a large amount of work in all in one go it will be much more work for whomever is reviewing your pull request. Help them help you 😉

If you feel tempted to "branch out" then please make a new branch and a new issue to go with it.

4. Submit a pull request

A member of the BIDS Starter Kit team will review your changes to confirm that they can be merged into the main codebase.

A review will probably consist of a few questions to help clarify the work you've done. Keep an eye on your github notifications and be prepared to join in that conversation.

You can update your fork of the BIDS Starter Kit repository and the pull request will automatically update with those changes. You don't need to submit a new pull request when you make a change in response to a review.

GitHub has a nice introduction to the pull request workflow, but please get in touch if you have any questions 🎈.

Example pull request

Example-Contribution



Recognizing contributions

BIDS follows the all-contributors specification, so we welcome and recognize all contributions from documentation to testing to code development. You can see a list of current contributors in the BIDS specification.

Thank you!

You're awesome. 👋😃


— Based on contributing guidelines from the STEMMRoleModels project.