About Generator
Generator is an MCP server published by use-drzl in the Developer Tools category: zero‑friction codegen for Drizzle ORM. Analyze your schema. Generate validation, services, and routers — fast.
The repository has 110 stars and 4 forks, with the last commit a month ago. Recent commit activity is the strongest signal that reported issues will get attention.
Install
git clone https://github.com/use-drzl/drzlThis server has no ConduID identity, so agent calls to it are not receipted. Pin the version you install and review the source before granting it credentials.
Ask AI
Ask AI about Generator
Powered by Claude · Grounded in docs
Security checks
Static checks derived from the repository 5 days ago. Heuristics on the source, not an audit.
- ✓README presentThe repository ships documentation.
- ✓License declaredUsable under a stated license.
- ✓Tests presentA test suite exists in the repository.
- ✓Dependencies pinnedA lockfile pins dependency versions.
- ✓No dynamic code executionSource scan found no eval, dynamic Function, or shell execution.
1 check has not been run yet.
Releases
README
DRZL
Zero‑friction codegen for Drizzle ORM. Analyze your schema. Generate validation, services, and routers fast.
Sponsor
- GitHub Sponsors: https://github.com/sponsors/omar-dulaimi
- Want something prioritized? Look for issues labeled
sponsor-wanted(or open one) and DM @omardulaimidev so we can reserve it for you. - Custom template/generator/adapter requests happen via X DM. Paid work ships back into DRZL so everyone benefits.
What’s Inside
- Analyzer: turns Drizzle schemas into a normalized analysis model
- Generators: Zod, Valibot, ArkType, TypeBox and Effect Schema validation; JSON Schema and OpenAPI;
typed CRUD services; routers for oRPC, tRPC, Hono, Express, Fastify, NestJS and GraphQL; and an
MCP server whose tools carry the table's CHECK constraints into what a model is allowed to write.
Twenty-seven in all, and installing
@drzl/clibrings every one of them - Batteries: formatting, naming, reusable/shared schemas, relation support
- Monorepo: pnpm workspace, lockstep releases with Changesets
Verified against three real databases
Postgres in-process via PGlite, SQLite via node:sqlite, and MySQL as a CI service container, on
every commit. The run behind this README printed:
1476 probes against a real Postgres (41 columns)
59 CHECK probes against a real Postgres (15 constrained columns)
rows Postgres rejects and the validator accepts: DRZL 0, drizzle-orm 24
32 CHECK probes against a real SQLite (10 constrained columns)
37 probes against a real MySQL
Those lines are compared against the run itself, line by line, by
scripts/verify/stages/35-docs-numbers.sh, so a number here that stops being true fails the build
rather than sitting in a README nobody rechecks. See how it is
verified.
Install & Use
- Install the CLI and init a config
pnpm add @drzl/cli -D
pnpm drzl init
- Generate code
pnpm drzl generate -c drzl.config.ts
Minimal config
// drzl.config.ts
import { defineConfig } from '@drzl/cli/config';
export default defineConfig({
schema: 'src/db/schemas/index.ts',
outDir: 'src/api',
generators: [
{ kind: 'zod', path: 'src/validators/zod' },
{ kind: 'service', path: 'src/services', dataAccess: 'drizzle' },
{ kind: 'orpc', template: '@drzl/template-orpc-service' },
],
});
Runtime
- ESM / ES2021 output
- Node ≥ 22 for the
drzlCLI, which is what its own dependencies require - Node ≥ 18.17 for the generator and template libraries, if you call them directly
Packages
packages/analyzer: schema analysispackages/cli: CLI (drzl)packages/generator-orpc: oRPC router generatorpackages/generator-trpc: tRPC v11 router generatorpackages/generator-hono: Hono route generatorpackages/generator-express: Express 5 router generatorpackages/generator-fastify: Fastify 5 plugin generatorpackages/generator-nestjs: NestJS DTO and entity class generatorpackages/generator-graphql: GraphQL SDL and resolver-stub generatorpackages/generator-effect-http: Effect Platform HttpApi generatorpackages/generator-h3: h3 and Nitro route handler generatorpackages/generator-elysia: Elysia route generatorpackages/generator-seed: constraint-satisfying seed data generatorpackages/generator-fast-check: constraint-bounded fast-check arbitrary generatorpackages/generator-pothos: Pothos schema builder generatorpackages/generator-ts-rest: ts-rest contract generatorpackages/generator-openapi-fetch: typed openapi-fetch client generatorpackages/generator-forms: react-hook-form and TanStack Form resolver and field-metadata generatorpackages/generator-ai: AI SDK tool generatorpackages/generator-mcp: Model Context Protocol tool generatorpackages/generator-next: Next.js server action generatorpackages/generator-tanstack-start: TanStack Start server function generatorpackages/generator-service: typed service generatorpackages/generator-zod: Zod generatorpackages/generator-valibot: Valibot generatorpackages/generator-arktype: ArkType generatorpackages/generator-typebox: TypeBox generatorpackages/generator-effect: Effect Schema generatorpackages/generator-json-schema: JSON Schema and OpenAPI generatorpackages/validation-core: shared validation utilitiespackages/template-orpc-service: oRPC router template (service‑backed)packages/template-standard: minimal oRPC router template
See each package’s README for details.
Development
- Install:
pnpm install - Build:
pnpm -r run build - Test:
pnpm -r test - Lint:
pnpm lint
Examples
Runnable applications live in examples/. They are workspace members that depend on the
workspace copy of @drzl/cli, so pnpm build and pnpm -r test cover them and a regression in a
generator breaks them.
examples/nextjs-server-actions: a Drizzle schema,drzl generate, and the emitted zod schemas validating what a form posts to a Next.js server action, with field errors attributed to the constraint that caused them.
Docs
VitePress site lives in docs/ (kept out of releases). Local dev:
pnpm -C docs dev
Funded Features
- None yet. Be the first! If you need a template, generator, or adapter that doesn’t exist yet, DM me on X (https://x.com/omardulaimidev) and we can scope a sponsored build. Funded work lands in this repo under Apache‑2.0 so everyone benefits.
Contributing
Contributions welcome. See CONTRIBUTING.md.
License
Apache-2.0
README fetched from the repository 5 days ago. The original is authoritative.