Développement open source

Contribuer au code source MeshCore

Participez au développement de MeshCore via des pull requests et contributions de code sur GitHub

Pourquoi contribuer à MeshCore ?

MeshCore est entièrement open source et développé par une communauté mondiale de développeurs. Tout le monde peut participer au firmware, que ce soit pour corriger des bugs, ajouter de nouvelles fonctionnalités, améliorer la documentation ou réviser du code.

La communauté MeshCore apprécie chaque contribution – des simples corrections de typos aux mises à jour majeures du protocole. Tous les niveaux d'expertise sont les bienvenus. En contribuant, vous faites avancer le projet tout en apprenant les systèmes embarqués, la technologie LoRa et les workflows GitHub.

Ce guide vous montre comment contribuer au développement MeshCore via GitHub, de la mise en place de votre environnement de développement à la soumission de votre première pull request.

Pourquoi contribuer à MeshCore ?

🎯

Avoir un impact

Votre code est utilisé par des milliers d'utilisateurs de réseaux mesh dans le monde entier

📚

Apprendre et progresser

Travaillez avec des technologies embarquées modernes, LoRa, C++ et les systèmes temps réel

🤝

Lien communautaire

Faites partie d'une communauté de développeurs active partageant les mêmes valeurs

Les fonctionnalités dont vous avez besoin

Implémentez les fonctionnalités que vous souhaitez utiliser vous-même sur le réseau

💼

Construire son portfolio

Les contributions open source sont précieuses pour votre CV et votre carrière

🎓

Bénéficier de mentorat

Apprenez des contributeurs expérimentés via les revues de code et les retours

Workflow GitHub étape par étape

Voici comment contribuer au firmware MeshCore via GitHub

1

Étape 1 : Fork et clone du dépôt

Créez un fork de MeshCore sur GitHub et clonez-le sur votre machine :

git clone https://github.com/YOUR_USERNAME/meshcore-firmware.git cd meshcore-firmware git remote add upstream https://github.com/meshcore/meshcore-firmware.git
2

Étape 2 : Créer une branche feature

Créez une nouvelle branche pour votre modification avec un nom descriptif :

git checkout -b feature/add-sensor-support # ou git checkout -b fix/routing-bug
3

Étape 3 : Implémenter votre modification

Écrivez votre code, testez rigoureusement et commitez avec des messages de commit clairs. Suivez les standards de codage du projet et écrivez des tests unitaires si possible.

4

Étape 4 : Push et ouverture d'une pull request

Poussez votre branche sur GitHub et ouvrez une pull request avec une description :

git push origin feature/add-sensor-support # Ouvrez ensuite la PR via l'interface web GitHub
5

Étape 5 : Revue de code et itération

L'équipe MeshCore examine votre code et fournit des commentaires. Intégrez les suggestions, poussez les mises à jour et itérez jusqu'à l'approbation et la fusion de la PR.

Types de contributions

Il existe plusieurs façons de contribuer à MeshCore – choisissez ce qui vous convient

🐛 Corrections de bugs

Corrigez les bugs que vous rencontrez en utilisant le logiciel :

  • Reproduisez le bug et documentez les étapes
  • Corrigez la cause racine et ajoutez un test

✨ Nouvelles fonctionnalités

Implémentez de nouvelles fonctionnalités :

  • Discutez d'abord avec les mainteneurs via une issue
  • Rédigez un document de conception pour les grandes fonctionnalités

📖 Documentation

Améliorez le README, les guides et les commentaires de code :

  • Corrigez les typos et les informations obsolètes
  • Rédigez des tutoriels et des guides pratiques

🧪 Tests et QA

Aidez aux tests et à l'assurance qualité :

  • Testez les nouvelles versions sur différents matériels
  • Écrivez des tests unitaires et d'intégration

Directives de contribution

  • Suivez les standards de codage - Respectez le style de code du projet (voir CONTRIBUTING.md)

  • Écrivez des messages de commit clairs - Décrivez le quoi et le pourquoi, pas seulement le quoi

  • Gardez les PR ciblées - Une PR = une fonctionnalité ou correction de bug, pas plusieurs modifications

  • Ajoutez des tests - Les nouvelles fonctionnalités doivent être accompagnées de tests unitaires si possible

  • Mettez la documentation à jour - Si vous modifiez une API, mettez aussi les docs à jour

  • Soyez respectueux - Communication amicale et constructive avec les reviewers

Questions fréquentes

Faut-il être un expert pour contribuer ?

Absolument pas ! Les débutants sont les bienvenus. Commencez par des petites contributions comme des corrections de documentation ou des bugs simples. La communauté vous aide à progresser via les revues de code et le mentorat.

Combien de temps faut-il pour qu'une PR soit examinée ?

Généralement sous 1 à 2 semaines, selon la taille de la PR et la disponibilité des mainteneurs. Les fonctionnalités importantes peuvent prendre plus de temps. Un rappel amical via Telegram est possible si ça tarde.

Que faire si ma PR est refusée ?

Cela arrive – cela ne signifie pas que votre travail est mauvais. Les mainteneurs expliquent pourquoi (périmètre, adéquation technique, etc.). Utilisez les retours pour vous améliorer ou essayez une autre approche.

Dois-je signer un CLA (Contributor License Agreement) ?

Non, MeshCore n'utilise pas de CLA. En contribuant, vous placez automatiquement votre code sous la même licence open source que le projet (consultez le fichier LICENSE pour les détails).

Peut-on être rémunéré pour les contributions ?

MeshCore est un projet open source bénévole. Certaines organisations sponsorisent des développeurs pour des fonctionnalités spécifiques – demandez dans le groupe Telegram s'il y a des bounties ou grants disponibles.

Devenez un contributeur MeshCore

Chaque contribution, aussi petite soit-elle, fait avancer le projet – des corrections de typos aux mises à jour de protocole

Forkez le dépôt, faites votre première modification et ouvrez une pull request !