ixahmedxi / orbitkit

🚀 Orbitkit is a monorepo starterkit aiming to be the foundation you build your next startup or big idea upon.
https://orbitkit.dev
MIT License
835 stars 54 forks source link

Feature Request: add drizzle-zod for mutation input validation #66

Open tconroy opened 5 months ago

tconroy commented 5 months ago

Is your feature request related to a problem? Please describe. trpc allows you to provide a Zod schema to the input() argument for mutations:

export const exampleRouter = createRouter({
                           // Here: v
  create: protectedProcedure.input(...).mutation(({ ctx }) => {
    const { user, db } = ctx;
  }),
});

It would be great if we could use the schema types we define in the DB package for inferring the necessary input.

Describe the solution you'd like drizzle-zod exists to solve this problem, as it's a plugin for Drizzle ORM that allows you to generate Zod schemas from Drizzle ORM schemas.

Describe alternatives you've considered N/A

Additional context Should these be defined in the API package? Or the DB package? (if DB: we'd need to make all the schema types publicly accessible / external to the package.)

ixahmedxi commented 5 months ago

Oh yes that should be easy to do.