Files
dofus-manager/docs/prd/requirements.md
2026-01-19 08:52:38 +01:00

3.0 KiB

Requirements

Functional Requirements

  • FR1: Le système doit permettre la création, lecture, modification et suppression (CRUD) des comptes avec les attributs : nom, ogrines, récompenses succès débloquées (Dofus, ressources).

  • FR2: Le système doit permettre la gestion CRUD des personnages avec les attributs : pseudo, classe (17 classes Dofus), niveau, serveur associé, compte associé.

  • FR3: Le système doit permettre la gestion CRUD des teams avec validation automatique de la contrainte "pas 2 personnages du même compte dans une team active".

  • FR4: Le système doit offrir un filtrage multicritères des personnages par : classe, niveau, compte, team, serveur, statut de progression (quêtes, donjons, recherchés).

  • FR5: Le système doit permettre la recherche textuelle sur les noms de personnages, comptes et teams.

  • FR6: Le système doit permettre les mises à jour groupées (bulk update) : cocher/décocher plusieurs progressions pour une sélection de personnages ou une team entière.

  • FR7: Le système doit tracker les progressions par personnage : quêtes Dofus (Turquoise, Pourpre, Émeraude, etc.), donjons par paliers avec types de succès, recherchés par région.

  • FR8: Le système doit tracker les monnaies par personnage : Doplons, Almatons, Orichor, Kamas de glace, Perles des profondeurs, Alitons, Trukdivins, Pages calendrier.

  • FR9: Le système doit afficher les totaux agrégés des monnaies au niveau compte et global.

  • FR10: Le système doit s'intégrer avec l'API DofusDB pour importer les données de référence (liste des quêtes, donjons, succès, recherchés).

  • FR11: Le système doit afficher une vue statut team avec pourcentage de complétion par objectif (ex: "Dofus Turquoise: 6/8 persos = 75%").

  • FR12: Le système doit gérer les métiers par couple compte+serveur (et non par personnage) avec niveau de maîtrise.

  • FR13: Le système doit permettre la gestion CRUD des serveurs (ex: Imagiro, Jahash, Draconiros) avec possibilité d'en ajouter de nouveaux.

Non-Functional Requirements

  • NFR1: L'application doit être responsive et utilisable sur desktop et tablette (usage sur second écran pendant le jeu).

  • NFR2: L'application doit offrir une latence de réponse < 500ms pour les opérations courantes (filtrage, CRUD).

  • NFR3: L'application doit supporter 100+ personnages sans dégradation notable des performances.

  • NFR4: L'application doit être auto-hébergeable sur un serveur dédié personnel via Docker.

  • NFR5: L'application doit utiliser PostgreSQL comme base de données pour la persistance.

  • NFR6: L'application doit être développée avec React + TanStack Start (full-stack TypeScript).

  • NFR7: Les données doivent être sauvegardables et restaurables facilement (backup PostgreSQL).

  • NFR8: L'application doit fonctionner en mode mono-utilisateur (pas d'authentification multi-users dans le MVP).