TypeScript-first ORM
- To interact with SQL db using TypeScript code instead of raw SQL.
- ❌ SELECT * FROM users WHERE id = 1;
- ✅ db.select().from(users).where(eq(users.id, 1));
use Drizzle when:
using TypeScript backend
- Next.js API routes (App Router / Route Handlers)
- Node.js backend (Express, Fastify, NestJS)
- Serverless functions (Vercel, Cloudflare Workers)
Need type-safe SQL queries
- full TypeScript autocomplete
- compile-time safety (less runtime bugs)
- better control over SQL
Supabase & Drizzle
Option A (no need drizzle)