Communauté open source

Le développement open source de MeshCore

Comment la communauté MeshCore construit ensemble un logiciel open source : licences, contributions et processus de développement

Pourquoi MeshCore est-il open source ?

MeshCore est un logiciel open source : l'intégralité du code source est disponible publiquement sur GitHub. Chacun peut consulter, utiliser, modifier et améliorer le code. Ce choix délibéré vise la transparence, la sécurité et un développement porté par la communauté.

Open source ne signifie pas seulement que le code est accessible. Cela implique aussi qu'une communauté active de développeurs, d'utilisateurs et de passionnés travaille ensemble aux améliorations. Tout le monde peut contribuer : du signalement de bugs à l'implémentation de fonctionnalités inédites.

Sur cette page, nous expliquons comment se déroule le processus de développement open source, comment contribuer et quels en sont les avantages.

Licence et philosophie

Licence MIT (permissive)

Le firmware MeshCore est distribué sous licence MIT – l'une des licences open source les plus permissives. Vous pouvez utiliser le code à n'importe quelle fin, y compris commerciale.

Libertés : utiliser, copier, modifier, distribuer, sous-licencier

GPL pour certains composants

Certains modules sont couverts par la GPL (copyleft). Si vous intégrez ces composants dans votre propre projet, vous devez également rendre votre code open source sous GPL.

Copyleft : les travaux dérivés doivent aussi être sous GPL

Philosophie open source

MeshCore embrasse les principes de l'open source : transparence, collaboration et propriété communautaire. Le réseau appartient à tous, pas à une seule entreprise ou organisation.

Comment contribuer

Pas besoin d'être un développeur chevronné pour apporter sa pierre à l'édifice. Il y a des possibilités pour chaque niveau :

🐛

Rapports de bugs

Signalez bugs, plantages ou comportements étranges via les GitHub Issues. Des rapports bien rédigés aident énormément.

Accessible aux débutants
📝

Documentation

Améliorez la documentation, rédigez des tutoriels, créez des guides vidéo. La documentation est au moins aussi importante que le code.

Accessible aux débutants
🧪

Tests

Testez les nouvelles versions, explorez les cas limites, vérifiez que les corrections fonctionnent. Les testeurs sont indispensables.

Intermédiaire
💻

Contributions de code

Corrigez des bugs, implémentez des fonctionnalités, optimisez les performances. Chaque pull request est la bienvenue.

Avancé
🎨

Design UI/UX

Améliorez l'interface de l'appli, créez des maquettes pour de nouvelles fonctionnalités, testez l'ergonomie.

Compétences design
🌍

Traductions

Traduisez l'appli, le firmware et la documentation dans d'autres langues. Aidez MeshCore à devenir accessible partout dans le monde.

Accessible aux débutants

Workflow de développement

1

Fork the repository

Créez un fork du dépôt MeshCore sur GitHub. C'est votre propre copie dans laquelle vous pouvez expérimenter librement.

2

Create a branch

Créez une nouvelle branche pour votre fonctionnalité ou correction. Utilisez des noms descriptifs comme « fix-routing-bug » ou « add-telemetry-sensor ».

3

Write code & test

Développez votre modification et testez-la rigoureusement. Assurez-vous que les fonctionnalités existantes restent intactes. Ajoutez des commentaires pour le code complexe.

4

Submit pull request

Soumettez une pull request vers le dépôt principal. Décrivez ce que vous avez modifié et pourquoi. Faites le lien avec les issues concernées.

5

Code review & merge

Les mainteneurs examinent votre code, donnent leur feedback et mergent en cas d'approbation. Ce processus peut être itératif, avec plusieurs tours de revue.

Avantages de l'open source

🔒

Sécurité

Tout le monde peut auditer le code. Aucune porte dérobée ni atteinte à la vie privée.

🚀

Innovation rapide

Des centaines de développeurs dans le monde y contribuent. L'innovation avance bien plus vite qu'en closed source.

🌍

Propriété communautaire

Le projet appartient à la communauté, pas à une seule entreprise. Il perdure tant que les utilisateurs le souhaitent.

📚

Plateforme d'apprentissage

Apprenez du code, expérimentez et perfectionnez vos compétences. L'open source est un excellent moyen de progresser.

🔧

Personnalisable

Adaptez le logiciel à votre cas d'usage spécifique. Pas de vendor lock-in.

💰

Entièrement gratuit

Pas de frais de licence, pas d'abonnement. Totalement gratuit, maintenant et pour toujours.

Questions fréquentes

Faut-il connaître le C++ pour contribuer ?

Pas forcément. Vous pouvez contribuer via les rapports de bugs, la documentation, les tests et les traductions sans aucune connaissance en programmation. Pour les contributions de code, des connaissances en C/C++ sont nécessaires.

Qui décide quelles fonctionnalités sont acceptées ?

Les mainteneurs principaux examinent les pull requests et décident de leur acceptation. Ils évaluent la qualité du code, la cohérence avec la feuille de route et l'absence d'impact négatif sur les fonctionnalités existantes.

Puis-je utiliser le code dans mon produit commercial ?

Oui, la licence MIT autorise l'usage commercial. Attention : certains composants sont sous GPL – ceux-ci exigent que votre code soit également open source.

En combien de temps les pull requests sont-elles examinées ?

Les mainteneurs s'efforcent de répondre aux pull requests sous 1 à 2 semaines. En période chargée, cela peut prendre plus de temps. Un peu de patience est parfois nécessaire.

Existe-t-il un canal de discussion pour les développeurs ?

Bien sûr, il y a un groupe Telegram actif où développeurs et utilisateurs posent des questions, échangent des idées et collaborent.

Puis-je créer un fork et ajouter mes propres fonctionnalités ?

Évidemment. C'est justement le principe de l'open source. Vous pouvez créer un fork, ajouter des fonctionnalités qui ne sont pas acceptées dans la branche principale, et distribuer votre propre version (conformément aux conditions de licence).

Rejoignez la communauté

MeshCore se développe grâce aux contributions de la communauté. Chaque apport compte : d'un simple rapport de bug à l'implémentation d'une fonctionnalité majeure. Participez !