# lifenexp Application libre de gamification des tâches de la vie quotidienne. ├── achievements/ # succès et titres └── federation/ # échanges entre instances ``` Les frontières entre applications pourront évoluer pendant la conception. ## API L'API sera versionnée : ```text /api/v1/ ``` Une documentation OpenAPI sera ajoutée avec, par exemple : ```text /api/schema/ /api/docs/ ``` Les changements incompatibles devront entraîner une nouvelle version majeure de l'API. ## Fédération L'objectif est de permettre à une instance de consulter les profils et arbres de compétences rendus publics sur d'autres instances. Avant implémentation, il faudra notamment définir : - l'identité stable d'un joueur distant ; - le mécanisme de découverte des instances ; - les formats d'échange ; - la signature ou l'authentification des requêtes ; - la gestion des blocages et de la modération ; - la protection des données personnelles ; - la compatibilité entre versions. ## Contribution 1. Créer une branche à partir de `main`. 2. Effectuer des commits courts et explicites. 3. Ajouter ou modifier les tests. 4. Ouvrir une pull request. 5. Attendre la validation de la CI et une revue. Exemples de noms de branches : ```text feat/skill-trees fix/xp-calculation docs/federation chore/ci ``` Le format [Conventional Commits](https://www.conventionalcommits.org/) est recommandé : ```text feat(skills): add skill tree model fix(progression): prevent duplicate XP rewards docs(api): describe profile endpoint ``` ## Sécurité Ne signalez pas publiquement une vulnérabilité exploitable. Consultez `SECURITY.md` pour connaître la procédure de signalement. Aucun secret, mot de passe, jeton ou fichier `.env` ne doit être ajouté au dépôt. ## Licence Ce projet est distribué sous la licence indiquée dans le fichier `LICENSE`. ## Mainteneurs - Dylan TIRARD