Qu'est-ce que Prisma et Zod ?

Prisma est un outil ORM (Object-Relational Mapping) qui utilise un fichier de schéma pour définir la structure de votre base de données avec des modèles, des champs et des relations. Zod est une bibliothèque de validation de schémas TypeScript-first qui vous permet de définir des validateurs de types à l'exécution. La conversion des schémas Prisma en schémas Zod vous permet de réutiliser vos définitions de modèles de base de données pour la validation des entrées, garantissant la cohérence entre la structure de votre base de données et la logique de validation dans toute votre application.

Description de l'outil

Cet outil convertit automatiquement les définitions de schémas Prisma en schémas de validation Zod. Il analyse vos modèles, énumérations et types de champs Prisma, puis génère les schémas Zod correspondants avec un mappage de types approprié. L'outil gère les champs optionnels, les tableaux et les types spéciaux Prisma, créant des schémas de validation prêts pour TypeScript qui reflètent la structure de votre base de données.

Fonctionnalités

  • Mappage automatique des types : Convertit les types Prisma (String, Int, DateTime, etc.) en validateurs Zod correspondants
  • Support des énumérations : Génère des schémas d'énumération Zod à partir des définitions d'énumération Prisma
  • Gestion des tableaux : Convertit correctement les champs de liste Prisma en validateurs de tableau Zod

Mappages de types supportés

  • Stringz.string()
  • Int, Float, Decimalz.number()
  • Booleanz.boolean()
  • DateTimez.date()
  • Jsonz.record(z.any())
  • Bytesz.instanceof(Buffer)
  • BigIntz.bigint()
  • Types personnalisés/énumérations → z.lazy(() => TypeSchema)
  • Listes → z.array()
  • Champs optionnels → .optional()