O que são Prisma e Zod?

Prisma é uma ferramenta ORM (Mapeamento Objeto-Relacional) que usa um arquivo de esquema para definir a estrutura do seu banco de dados com modelos, campos e relacionamentos. Zod é uma biblioteca de validação de esquemas TypeScript-first que permite definir validadores de tipo em tempo de execução. Converter esquemas Prisma em esquemas Zod permite reutilizar suas definições de modelo de banco de dados para validação de entrada, garantindo consistência entre a estrutura do banco de dados e a lógica de validação em toda a sua aplicação.

Descrição da ferramenta

Esta ferramenta converte automaticamente definições de esquema Prisma em esquemas de validação Zod. Ela analisa seus modelos, enumerações e tipos de campos Prisma, e então gera os esquemas Zod correspondentes com mapeamento de tipos apropriado. A ferramenta lida com campos opcionais, arrays e tipos especiais Prisma, criando esquemas de validação prontos para TypeScript que espelham a estrutura do seu banco de dados.

Recursos

  • Mapeamento automático de tipos: Converte tipos Prisma (String, Int, DateTime, etc.) em validadores Zod correspondentes
  • Suporte a enumerações: Gera esquemas de enumeração Zod a partir de definições de enumeração Prisma
  • Manipulação de arrays: Converte corretamente campos de lista Prisma em validadores de array Zod

Mapeamentos de tipos suportados

  • Stringz.string()
  • Int, Float, Decimalz.number()
  • Booleanz.boolean()
  • DateTimez.date()
  • Jsonz.record(z.any())
  • Bytesz.instanceof(Buffer)
  • BigIntz.bigint()
  • Tipos personalizados/enumerações → z.lazy(() => TypeSchema)
  • Listas → z.array()
  • Campos opcionais → .optional()