Skip to content

Setup une validation des données et une génération de documentation universelle #91

@mathieusouflis

Description

@mathieusouflis

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

Metadata

Metadata

Labels

enhancementNew feature or request

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions