Vad är Prisma och Zod?

Prisma är ett ORM (Object-Relational Mapping)-verktyg som använder en schemafil för att definiera din databasstruktur med modeller, fält och relationer. Zod är ett TypeScript‑först schema‑valideringsbibliotek som låter dig definiera typvaliderare vid körning. Att konvertera Prisma‑scheman till Zod‑scheman gör det möjligt att återanvända dina databasmodellsdefinitioner för inmatningsvalidering, vilket säkerställer konsistens mellan din databasstruktur och valideringslogik i hela applikationen.

Verktygsbeskrivning

Detta verktyg konverterar automatiskt Prisma‑schemadefinitioner till Zod‑valideringsscheman. Det analyserar dina Prisma‑modeller, enum‑typer och fälttyper och genererar därefter motsvarande Zod‑scheman med korrekta typmappningar. Verktyget hanterar valfria fält, arrayer och speciella Prisma‑typer och skapar TypeScript‑klara valideringsscheman som speglar din databasstruktur.

Funktioner

  • Automatisk typmappning: Konverterar Prisma‑typer (String, Int, DateTime, etc.) till motsvarande Zod‑validerare
  • Enum‑stöd: Genererar Zod‑enum‑scheman från Prisma‑enum‑definitioner
  • Array‑hantering: Konverterar korrekt Prisma‑listfält till Zod‑array‑validerare

Stödda typmappningar

  • Stringz.string()
  • Int, Float, Decimalz.number()
  • Booleanz.boolean()
  • DateTimez.date()
  • Jsonz.record(z.any())
  • Bytesz.instanceof(Buffer)
  • BigIntz.bigint()
  • Custom types/enums → z.lazy(() => TypeSchema)
  • Lists → z.array()
  • Optional fields → .optional()