85 lines
1.9 KiB
Markdown
85 lines
1.9 KiB
Markdown
# 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
|