Contribuer aux projets
Participer aux projets open source de la communauté CC France
Prérequis recommandés
Contribuer aux projets open source
Rejoignez l'aventure open source CC France et faites grandir la communauté !
Pourquoi contribuer ?
Impact
- Aidez des milliers d'utilisateurs
- Améliorez les outils que vous utilisez
- Construisez quelque chose d'utile
- Laissez votre empreinte
Apprentissage
- Progressez techniquement
- Découvrez de nouvelles pratiques
- Maîtrisez Git et GitHub
- Apprenez à collaborer
Reconnaissance
- Visibilité : Votre profil GitHub s'étoffe
- Badge : Obtenez le badge Contributeur 🎯
- Réseau : Connectez avec des développeurs
- Carrière : Boostez votre CV
Projets CC France
cc-france (principale plateforme)
Stack : Next.js 15, MongoDB, TypeScript Repo : github.com/cc-france/cc-france
Besoins :
- Nouvelles fonctionnalités
- Corrections de bugs
- Améliorations UX/UI
- Tests automatisés
- Documentation
Difficulté : Intermédiaire à avancé
cc-france-docs
Stack : Markdown, documentation Repo : github.com/cc-france/cc-france-docs
Besoins :
- Rédaction de guides
- Traduction de docs Anthropic
- Exemples de code
- Tutoriels vidéo
Difficulté : Débutant à intermédiaire
cc-france-examples
Stack : Divers (Next.js, React, Node.js) Repo : github.com/cc-france/cc-france-examples
Besoins :
- Projets démo
- Templates
- Workflows Claude Code
- Before/after examples
Difficulté : Tous niveaux
Plugins communautaires
Stack : Divers Repos : Multiples
Besoins :
- Nouveaux plugins
- Tests et validation
- Documentation
- Maintenance
Difficulté : Intermédiaire à avancé
Trouver une tâche
Issues GitHub
Labels utiles :
good first issue: Parfait pour débuterhelp wanted: Besoin d'aidebug: Correction de bugenhancement: Nouvelle fonctionnalitédocumentation: Amélioration de docs
Comment trouver :
- Allez sur le repo
- Onglet "Issues"
- Filtrer par label
- Lisez la description
- Commentez pour vous assigner
Roadmap
Consultez ROADMAP.md dans chaque repo pour voir :
- Fonctionnalités planifiées
- Priorités
- Statuts (todo/in-progress/done)
Discord
Canal #contributions :
- Annonces de nouveaux besoins
- Discussions sur les contributions
- Aide technique
- Coordination
Processus de contribution
1. Setup initial
Fork le repo
# Sur GitHub, cliquez "Fork"
# Puis clonez votre fork
git clone https://github.com/VOTRE-USERNAME/cc-france.git
cd cc-france
Installer les dépendances
bun install
cp .env.example .env.local
# Configurez vos variables d'environnement
Ajouter l'upstream
git remote add upstream https://github.com/cc-france/cc-france.git
git fetch upstream
2. Créer une branche
# Toujours partir de main à jour
git checkout main
git pull upstream main
# Créer une branche descriptive
git checkout -b feature/nom-de-la-feature
# ou
git checkout -b fix/nom-du-bug
Naming conventions :
feature/: Nouvelle fonctionnalitéfix/: Correction de bugdocs/: Documentationrefactor/: Refactoringtest/: Tests
3. Développer
Suivre les conventions
Code style :
- TypeScript strict mode
- ESLint rules respectées
- Prettier formatage automatique
- Commentaires en français
Commits :
git commit -m "feat: ajoute système de badges"
git commit -m "fix: corrige bug d'authentification"
git commit -m "docs: met à jour le guide de contribution"
Format Conventional Commits :
feat:: Nouvelle fonctionnalitéfix:: Correction de bugdocs:: Documentationstyle:: Formatagerefactor:: Refactoringtest:: Testschore:: Maintenance
Tester localement
# Development server
bun dev
# Type checking
bun run type
# Linting
bun run lint
# Tests (si disponibles)
bun test
4. Créer une Pull Request
Push votre branche
git push origin feature/nom-de-la-feature
Sur GitHub
- Allez sur votre fork
- Cliquez "Compare & pull request"
- Titre clair :
feat: ajoute système de badges - Description détaillée :
## Description
Implémente un système de badges pour gamifier la plateforme.
## Changes
- Ajoute modèle Badge dans MongoDB
- Crée API endpoints pour badges
- Ajoute composants UI pour affichage
- Met à jour profil utilisateur
## Type de changement
- [x] Nouvelle fonctionnalité
- [ ] Correction de bug
- [ ] Breaking change
- [ ] Documentation
## Checklist
- [x] Code testé localement
- [x] TypeScript compile sans erreur
- [x] ESLint passe
- [x] Documentation mise à jour
- [ ] Tests automatisés ajoutés
## Screenshots

## Issues liées
Closes #123
5. Review et itération
Attendre la review
Les mainteneurs vont :
- Examiner votre code
- Tester localement
- Demander des changements si nécessaire
- Approuver ou rejeter
Répondre aux commentaires
# Faire les modifications demandées
git add .
git commit -m "fix: applique suggestions de review"
git push origin feature/nom-de-la-feature
La PR se mettra à jour automatiquement !
Résoudre les conflicts
Si main a évolué :
git checkout main
git pull upstream main
git checkout feature/nom-de-la-feature
git rebase main
# Résoudre les conflits si nécessaire
git add .
git rebase --continue
git push origin feature/nom-de-la-feature --force
6. Merge et célébration !
Une fois approuvée, un mainteneur mergera votre PR.
Félicitations, vous êtes contributeur ! 🎉
Bonnes pratiques
Code quality
✅ DO :
- Écrire du code lisible et commenté
- Respecter les conventions existantes
- Tester tous les cas (succès + erreurs)
- Ajouter de la documentation
- Faire des commits atomiques
❌ DON'T :
- Commit du code non fonctionnel
- Ignorer les erreurs TypeScript
- Faire des PR massives (>500 lignes)
- Modifier des fichiers non liés
- Oublier de tester
Communication
Avant de commencer :
- Commentez l'issue pour vous assigner
- Discutez de l'approche si c'est complexe
- Demandez des clarifications si besoin
Pendant le développement :
- Partagez votre progression sur Discord
- Demandez de l'aide si bloqué
- Signalez les obstacles
Dans la PR :
- Expliquez clairement vos choix
- Justifiez les changements majeurs
- Ajoutez des captures d'écran si UI
- Linkez les issues pertinentes
Respect
- Soyez patient : Reviews prennent du temps
- Restez humble : Acceptez les critiques constructives
- Soyez respectueux : Toujours courtois et professionnel
- Persévérez : Les premières PR sont toujours challengeantes !
Types de contributions
Code
Frontend :
- Nouveaux composants React
- Améliorations UI/UX
- Responsive design
- Accessibilité (a11y)
Backend :
- API endpoints
- Modèles de données
- Logique métier
- Optimisations
DevOps :
- Scripts de déploiement
- CI/CD pipelines
- Docker/containerisation
- Monitoring
Non-code
Documentation :
- Guides d'utilisation
- Documentation technique
- Traductions
- Vidéos tutoriels
Design :
- Maquettes UI
- Icônes et illustrations
- Brand assets
- Prototypes interactifs
QA :
- Reporting de bugs
- Tests manuels
- Suggestions d'amélioration
- Feedback utilisateur
Reconnaissance
Badges
Contributeur 🎯 :
- 1ère PR mergée
Super Contributeur 🏆 :
- 10+ PRs mergées
Core Contributor 💎 :
- Contributeur régulier (3+ mois)
- Impact significatif
- Aide à la review d'autres PRs
Hall of Fame
Les meilleurs contributeurs sont mis en avant :
- Page "Contributors" sur le site
- Mentions dans changelog
- Remerciements dans releases
- Accès canal #core-contributors
Opportunités
Mainteneur :
- Contributeurs actifs peuvent devenir mainteneurs
- Droits d'écriture sur repos
- Participation aux décisions techniques
Speakers :
- Priorité pour présenter en meetups
- Articles de blog sur vos contributions
Ressources
Documentation
- CONTRIBUTING.md : Guide complet dans chaque repo
- CODE_OF_CONDUCT.md : Règles de la communauté
- ARCHITECTURE.md : Architecture technique
- CLAUDE.md : Contexte pour Claude Code
Outils
- GitHub CLI :
ghpour gérer PRs en CLI - GitLens : Extension VS Code pour Git
- Conventional Commits : Extension pour commits formatés
Aide
- Discord #contributions : Questions techniques
- Discord #code-review : Demander une review informelle
- GitHub Discussions : Discussions longues
- Issues : Questions spécifiques à une feature
FAQ
Quelle taille pour une PR ?
- Idéal : <300 lignes
- Max recommandé : 500 lignes
- Si plus : découper en plusieurs PRs
Combien de temps pour une review ?
- Généralement : 2-5 jours
- Urgences : 24-48h
- Pendant vacances : peut être plus long
Ma PR a été refusée, pourquoi ?
- Possibles raisons : hors scope, qualité insuffisante, conflit avec roadmap
- Discutez avec les mainteneurs
- Comprenez les retours
- Réessayez avec améliorations
Je n'ai jamais contribué à l'open source
- Parfait ! C'est l'occasion
- Commencez par de petites tâches
- La communauté est bienveillante
- N'hésitez pas à demander de l'aide
Prochaines étapes
- 🔍 Explorez les repos GitHub
- 📝 Choisissez une
good first issue - 💬 Présentez-vous dans #contributions
- 🚀 Créez votre première PR !
Bienvenue parmi les contributeurs ! 🎉