Skip to content

Generate Zod schemas (v3) from Typescript types generated by the Supabase CLI.

License

Notifications You must be signed in to change notification settings

psteinroe/supabase-to-zod

Repository files navigation

supabase-to-zod

Generate Zod schemas (v3) from Typescript types generated by the Supabase CLI.

Version License

Note

@dohoo forked this project and created SupaZod. It's a significant improvement, and I recommend trying it out instead: https://github.com/dohooo/supazod

Usage

$ pnpm add --D supabase-to-zod
$ supabase gen types typescript --local > types.ts
$ pnpm supabase-to-zod --input types.ts --output schemas.ts

That's it, go to schemas.ts file, you should have a schema for all tables, views, enums and functions.

Authors Note

This project was created in a few hours during the Launchweek VI hackathon and the approach is very hacky: It transforms the nested Database type generated by the Supabase CLI into flat types, and passes them through ts-to-zod to generate zod schemas. A proper solution would be using the pg-meta API to generate zod schemas directly from the source of truth, similar to how the Typescript types are generated.

About

Generate Zod schemas (v3) from Typescript types generated by the Supabase CLI.

Resources

License

Stars

Watchers

Forks

Packages

No packages published