|
| 1 | +# Contributing to ObesiTrack |
| 2 | + |
| 3 | +Merci de votre intérêt pour contribuer à **ObesiTrack** ! 🎉 |
| 4 | +Ce projet repose sur la collaboration ouverte et toutes les contributions sont les bienvenues : corrections de bugs, nouvelles fonctionnalités, documentation, tests, etc. |
| 5 | + |
| 6 | +--- |
| 7 | + |
| 8 | +## 1️⃣ Signaler un bug |
| 9 | + |
| 10 | +Si vous trouvez un bug, merci de créer une issue avec les informations suivantes : |
| 11 | + |
| 12 | +- **Description claire** du problème |
| 13 | +- **Étapes pour reproduire** le bug |
| 14 | +- **Comportement attendu** |
| 15 | +- Captures d’écran ou logs si possible |
| 16 | +- Version de l’application (`commit SHA`, tag Docker, etc.) |
| 17 | + |
| 18 | +👉 Avant de soumettre un bug, vérifiez qu’il n’a pas déjà été signalé dans les issues existantes. |
| 19 | + |
| 20 | +--- |
| 21 | + |
| 22 | +## 2️⃣ Proposer une fonctionnalité |
| 23 | + |
| 24 | +Pour suggérer une nouvelle fonctionnalité : |
| 25 | + |
| 26 | +1. Consultez la liste des issues ouvertes pour vérifier qu’elle n’existe pas déjà. |
| 27 | +2. Créez une **Feature Request** en précisant : |
| 28 | + - Une **description détaillée** de la fonctionnalité |
| 29 | + - Les **cas d’usage concrets** |
| 30 | + - Les **bénéfices pour les utilisateurs** (médecins, chercheurs, institutions de santé, etc.) |
| 31 | + |
| 32 | +--- |
| 33 | + |
| 34 | +## 3️⃣ Contribuer au code |
| 35 | + |
| 36 | +1. **Forkez** ce dépôt. |
| 37 | +2. **Clonez** votre fork : |
| 38 | + ```bash |
| 39 | + git clone https://github.com/<votre-username>/ObesiTrack.git |
| 40 | + cd ObesiTrack |
| 41 | + ``` |
| 42 | +3. Créez une branche pour votre contribution : |
| 43 | + ```bash |
| 44 | + git checkout -b feature/ma-nouvelle-fonctionnalite |
| 45 | + ``` |
| 46 | +4. Installez les dépendances : |
| 47 | + ```bash |
| 48 | + pip install -r requirements.txt |
| 49 | + ``` |
| 50 | + Ou via Docker Compose : |
| 51 | + ```bash |
| 52 | + docker compose up --build |
| 53 | + ``` |
| 54 | +5. Vérifiez que les tests passent : |
| 55 | + ```bash |
| 56 | + pytest |
| 57 | + ``` |
| 58 | +6. Commitez vos changements avec un message explicite : |
| 59 | + ```bash |
| 60 | + git commit -m "feat: ajout endpoint d'explicabilité SHAP" |
| 61 | + ``` |
| 62 | +7. Poussez vos modifications : |
| 63 | + ```bash |
| 64 | + git push origin feature/ma-nouvelle-fonctionnalite |
| 65 | + ``` |
| 66 | +8. Ouvrez une **Pull Request** vers la branche principale du dépôt. |
| 67 | + |
| 68 | +--- |
| 69 | + |
| 70 | +## 4️⃣ Bonnes pratiques de code |
| 71 | + |
| 72 | +- Respecter les conventions **PEP8** et exécuter `flake8`. |
| 73 | +- Fournir des **tests unitaires/CI** pour chaque nouvelle fonctionnalité. |
| 74 | +- Documenter vos changements (README, docstrings, Swagger si endpoints API). |
| 75 | +- Vérifier la compatibilité avec Docker/Helm et la CI/CD. |
| 76 | + |
| 77 | +--- |
| 78 | + |
| 79 | +## 5️⃣ Documentation & Tests |
| 80 | + |
| 81 | +- API documentée via **Swagger** : `/docs` |
| 82 | +- Tests exécutables avec `pytest` |
| 83 | +- Monitoring & Observabilité : **Prometheus + Grafana** |
| 84 | +- Explicabilité & Drift : **SHAP + Evidently** |
| 85 | + |
| 86 | +--- |
| 87 | + |
| 88 | +## 6️⃣ Code de conduite |
| 89 | + |
| 90 | +Nous nous engageons à maintenir un environnement inclusif et respectueux. |
| 91 | +Merci de lire et de respecter le [Code de conduite](CODE_OF_CONDUCT.md). |
| 92 | + |
| 93 | +--- |
| 94 | + |
| 95 | +💡 Toute contribution, qu’il s’agisse de documentation, de correction mineure ou de nouvelle fonctionnalité majeure, est précieuse. |
| 96 | +Merci d’aider à faire d’**ObesiTrack** une solution robuste et utile pour la recherche et la santé publique. 🚀 |
0 commit comments