We're excited that you're interested in contributing to the Meshtastic firmware! This document provides a high-level overview of how you can get involved.
Before you begin, please:
-
Read our documentation: Our official documentation is a crucial resource. It contains essential information about the project.
-
Check out the firmware build guide: For specific instructions on setting up your development environment and building the firmware, refer to our Firmware Build Guide.
-
Read our Code of Conduct
-
Join our Discord community to connect with developers and other contributors to get help.
We encourage open communication and discussion before diving into code changes:
-
Use GitHub Discussions: For new ideas, questions, or to discuss potential changes, start a conversation in our GitHub Discussions first. This helps us collaborate and avoid duplicate work.
-
Join our Discord: For real-time chat and quick questions, join our Discord server. It's a great place to get help and connect with other developers and the community.
-
Reporting Issues: If you've identified a bug, please use our bug report template when creating a new issue in the issue tracker. Ensure you've searched existing issues to avoid duplicates.
Important
Before making any contributions, you must sign our Contributor License Agreement (CLA). You can do this by visiting https://cla-assistant.io/meshtastic/firmware. Be sure to use the GitHub account you will use to submit your contributions when signing.
- Fork the repository
- Create a new branch for your feature or bug fix
- Make your changes
- Test your changes thoroughly
- Create a pull request with a clear description, using the provided template, of your changes. Be sure to enable "Allow edits from maintainers".
To ensure consistent code formatting across the project:
- Install the Trunk extension for Visual Studio Code.
- Before submitting your changes, run
trunk fmt
to automatically format your code according to our standards.
Adhering to these formatting guidelines helps maintain code consistency and makes the review process smoother.
Thank you for contributing to Meshtastic!