By ofershap
Drizzle ORM done right. Schema design, relations, migrations, type-safe queries, and performance patterns for the fastest-growing TypeScript ORM.
Drizzle ORM done right. pgTable schema design, relations(), $inferSelect/$inferInsert type
inference, prepared statements, drizzle-kit migrations, relational queries, drizzle-zod, and
connection pooling.
AI coding assistants default to Prisma syntax, write raw SQL instead of using the query builder, manually define types that mirror schemas, and skip
drizzle-kitfor migrations. This plugin anchors your agent to Drizzle's actual API.
npx skills add ofershap/drizzle-best-practices
Or copy skills/ into your .cursor/skills/ or .claude/skills/ directory.
| Type | Name | Description |
|---|---|---|
| Skill | drizzle-best-practices | 12 rules for schema design, relations, type inference, queries, migrations, and more |
| Rule | best-practices | Always-on behavioral rule that enforces Drizzle ORM patterns |
| Command | /audit | Scan your codebase for Drizzle ORM anti-patterns |
| What the agent writes | What Drizzle actually uses |
|---|---|
Prisma-style model User { } | pgTable("users", { ... }) |
@relation decorators | relations() function |
| Raw SQL strings | Drizzle query builder API |
Manual interface User { } | $inferSelect and $inferInsert |
| Hand-written migration SQL | drizzle-kit generate + drizzle-kit migrate |
| No query preparation | db.query.users.findMany().prepare() |
If this helped your workflow, a star helps others find it.
MIT
Own this plugin?
Verify ownership to unlock analytics, metadata editing, and a verified badge. GitHub access is read-only (username + org membership).
Sign in to claimOwn this plugin?
Verify ownership to unlock analytics, metadata editing, and a verified badge. GitHub access is read-only (username + org membership).
Sign in to claimBased on adoption, maintenance, documentation, and repository signals. Not a security audit or endorsement.
npx claudepluginhub ofershap/drizzle-best-practicesSvelteKit and Svelte 5 done right. Runes ($state, $derived, $effect), load functions, form actions, SSR patterns, and modern Svelte your AI agent should follow.
Modern TypeScript patterns your AI agent should use. Strict mode, discriminated unions, satisfies operator, const assertions, and type-safe patterns for TypeScript 5.x.
Query and analyze your Cursor Enterprise team's AI usage, spending, and adoption metrics. Wraps the full Cursor Admin and Analytics APIs as MCP tools with expert data interpretation skills.
FastAPI done right. Async patterns, dependency injection, Pydantic v2 models, middleware, background tasks, and project structure for production APIs.
Modern Python 3.12+ patterns your AI agent should use. Type hints, async/await, Pydantic v2, uv package manager, match statements, and project structure.
Drizzle ORM を使ったデータベーススキーマの管理とマイグレーションガイド
Drizzle ORM changes since training cutoff (latest: 1.0.0-beta.19) — consolidated validator imports, Effect Schema support, node-sqlite driver, .comment() query tagging. Load before working with Drizzle.
Database schema design for PostgreSQL/MySQL with normalization, relationships, constraints. Use for new databases, schema reviews, migrations, or encountering missing PKs/FKs, wrong data types, premature denormalization, EAV anti-pattern.
Generate ORM models from database schemas or create database schemas from models for TypeORM, Prisma, Sequelize, SQLAlchemy, and more
Neon database development skills including authentication, Drizzle ORM, serverless drivers, and toolkit utilities
Database architecture and SQL optimization with PostgreSQL expertise