Contribute

Open source is about sharing, creating something awesome together and contribute to the greater good! Whenever you do something that you think someone else could benefit from, please contribute it! If you were curious or confused about something, someone else probably will too. Help them by sharing your thoughts, insights and discoveries.

Where and what to contribute?

There are many ways to contribute, here are some examples

  • Discussions Answer a question on the Discussions
  • Github
    • Issue reporting: Add an issue to one of the repos on github with a bug report.
    • Feature requests Feel free to make an issue to request a new functionality.
    • Pull Requests: Submit a pull request to one of the repos on github.
  • Improving Documentation
    • Repo Documentation: Add or update the documentation in our Repository overview.
    • Website Documentation: Improve the main website documentation.
  • Sharing your work:
    • Blog. Become a guest blogger for our Blog. Send us an email at contact@bitcraze.io to get a blog account.
    • Social Media: Upload a video of your work to YouTube or on any of our other social media channels

Contributing in Github

The source code for firmware, clients, tools and the website are hosted on Github.

Issue tracking

When reporting github issues the more information you can supply the better.

  • Information about the environment:
    • What version of the firmware are you running
    • If relevant, what are you using to control the Crazyflie. ie. What lib or client, and what version.
  • How to reproduce the issue: Step-by-step guide on how the issue can be reproduced (or at least how you reproduce it). Include everything you think might be useful, the more information the better.

Feature requests

If you are missing anything in terms of functionality, we and the community are continuously working to improve the firmware. Feel free to make an issue to request a new functionality!

Pull Requests

We use pull requests for code contributions, read more about how it works on this article github.

Code Contributions are of great value to the project and we are very happy for any contribution, large or small, but to make it possible for us to merge your additions into the codebase there are general guide-lines to follow:

  • Describe the change
  • Refer to any issues it effects
  • Separate one pull request per functionality: if you start writing “and” in the feature description consider if it could be separated in two pull requests.
  • The pull request must pass the automated testing

Please look at the general code contributing Guidelines and code standards for more information.

Improving Documentation

The main documentation of this website is handled in its own repository on our our github, so submit a pull request for your improvements.

The more detailed repository documentation is hosted on this website but its source exists in the doc folders of the repos on github of which we also have some guidelines to keep in mind.

Contribution Support

Maybe you want to contribute but don’t know what to do? Need help to find the right solution? Not sure of how to write a unit test? We are here to help you!

Post a question in the discussion page, add an issue on github or drop us an email at contact@bitcraze.io to get help. You can also submit a issue with the request to one of the repos on github to get the communities opinion.