Skip to content

Commit

Permalink
Added CONTRIBUTING.md (fixes #12)
Browse files Browse the repository at this point in the history
  • Loading branch information
ubruhin committed Jun 1, 2016
1 parent 09f029d commit 6e072be
Showing 1 changed file with 56 additions and 0 deletions.
56 changes: 56 additions & 0 deletions CONTRIBUTING.md
@@ -0,0 +1,56 @@
# Contributing Guidelines

## Notes

- **Before spending lots of time on something, ask for feedback on your idea first!**
- Please search issues and pull requests before adding something new to avoid duplicating efforts and conversations.
- Issues which are considered to be easy to solve are marked with the label `easy`: [Browse all easy issues](https://github.com/LibrePCB/LibrePCB/labels/easy).

## Getting Started

- Make sure you have a [GitHub account](https://github.com/signup/free).
- Submit a ticket for your issue, assuming one does not already exist.
- Fork the repository on GitHub.
- Have a look at our [development resources](https://github.com/LibrePCB/LibrePCB/tree/master/dev),
especially at the [Doxygen documentation](http://librepcb.org/LibrePCB-Doxygen/master/).
- When using QtCreator, import and use our [code style guide file](https://github.com/LibrePCB/LibrePCB/blob/master/dev/CodingStyle_QtCreator.xml).

## Making Changes

- Create a topic branch from where you want to base your work.
- This is usually the master branch.
- To quickly create a topic branch based on master:
`git checkout -b my_contribution master`
- Please avoid working directly on the `master` branch.
- Write code which follows our [code style guides](http://librepcb.org/LibrePCB-Doxygen/master/df/d24/doc_code_style_guide.html)
and [.editorconfig settings](https://github.com/LibrePCB/LibrePCB/blob/master/.editorconfig).
- Make commits of logical units.
- Make sure your commit messages are in the proper format.
Example: [0d896b69fdffbeb873957ed2b66eb9b0aa2ba750](https://github.com/LibrePCB/LibrePCB/commit/0d896b69fdffbeb873957ed2b66eb9b0aa2ba750)
- Make sure you have added the necessary tests for your changes.
- Run _all_ the tests to assure nothing else was accidentally broken.

## Submitting Changes

- Push your changes to a topic branch in your fork of the repository.
- Submit a pull request to the repository in the LibrePCB organization.
- We will then check the pull request and give you feedback quickly.

## Other Contributions

This project welcomes non-code contributions, too! The following types of contributions are welcome:

- **Ideas**: Participate in an issue thread or start your own to have your voice heard.
- **Bugreports**: Found a bug in LibrePCB? Just open an issue and describe how to reproduce that bug.
- **Small Fixes**: Fix typos, clarify language, and generally improve the quality of the content.
- **Documentation**: Create/improve documentations for end-users or for developers of LibrePCB.
- **Translations**: Add/improve [translations for LibrePCB](https://github.com/LibrePCB/LibrePCB/tree/master/i18n).
- **Website**: Improve our [website](http://librepcb.org) which is hosted in the repository [LibrePCB/LibrePCB.github.io](https://github.com/LibrePCB/LibrePCB.github.io).
- **Sharing**: Speak about LibrePCB with your friends and colleagues, or write about it in the internet!
- **Donations**: Donate to the LibrePCB developers with Bitcoin: [1FiXZxoXe3px1nNuNygRb1NwcYr6U8AvG8](bitcoin:1FiXZxoXe3px1nNuNygRb1NwcYr6U8AvG8)

# Additional Resources

- [General GitHub documentation](https://help.github.com/)
- [GitHub pull request documentation](https://help.github.com/send-pull-requests/)

0 comments on commit 6e072be

Please sign in to comment.