Problem statement
Il n'y a actuellement pas de documenatation lors de la génération de l'api (swagger)
Proposed solution
L'idée est d'utiliser le pattern decorator pour typer fortement la documentation et injecter la validation des données dans un middleware de l'api (entrée et sortie).
Le fonctionnement a implémenter doit fonctionner pour express dans un premier temps mais doit pouvoir s'étendre si possible a d'autres librairies ne supportant pas la documentation automatique (fastify par exmeple)
On peut s'inspirer de ce que j'ai fait dans ce répository tout en faisant une version plus propre.
https://github.com/mathieusouflis/HETIC-projet-cinema
https://github.com/mathieusouflis/HETIC-projet-cinema/tree/main/apps/api/src/shared/infrastructure
Il faudra aussi ajouter les questions dans le flow (a toi de voir le best ux pour la dispo et la formulation) pour demander a l'utilisateur s'il souhaite la validation et la documentation optimisée de son api (avec une description marquant qu'on utilise le pattern decorator pour faire ...) ou faire tout a la main). Ensuite il faudra demander le package a utiliser pour la validation des données (pour l'instant que zed). (On ajoute par défaut openapi a l'api (il faudra prévoire d'ajouter la documentation sur les routes existantes.)
PS: Attention a bien adapter le fonctionnement des decorateurs pour chaques architecture
Alternatives considered
No response
Area
GENERATOR
Additional context
No response
Problem statement
Il n'y a actuellement pas de documenatation lors de la génération de l'api (swagger)
Proposed solution
L'idée est d'utiliser le pattern decorator pour typer fortement la documentation et injecter la validation des données dans un middleware de l'api (entrée et sortie).
Le fonctionnement a implémenter doit fonctionner pour express dans un premier temps mais doit pouvoir s'étendre si possible a d'autres librairies ne supportant pas la documentation automatique (fastify par exmeple)
On peut s'inspirer de ce que j'ai fait dans ce répository tout en faisant une version plus propre.
https://github.com/mathieusouflis/HETIC-projet-cinema
https://github.com/mathieusouflis/HETIC-projet-cinema/tree/main/apps/api/src/shared/infrastructure
Il faudra aussi ajouter les questions dans le flow (a toi de voir le best ux pour la dispo et la formulation) pour demander a l'utilisateur s'il souhaite la validation et la documentation optimisée de son api (avec une description marquant qu'on utilise le pattern decorator pour faire ...) ou faire tout a la main). Ensuite il faudra demander le package a utiliser pour la validation des données (pour l'instant que zed). (On ajoute par défaut openapi a l'api (il faudra prévoire d'ajouter la documentation sur les routes existantes.)
PS: Attention a bien adapter le fonctionnement des decorateurs pour chaques architecture
Alternatives considered
No response
Area
GENERATOR
Additional context
No response