davila7 / database-design
Install for your project team
Run this command in your project directory to install the skill for your entire team:
mkdir -p .claude/skills/database-design && curl -L -o skill.zip "https://fastmcp.me/Skills/Download/755" && unzip -o skill.zip -d .claude/skills/database-design && rm skill.zip
Project Skills
This skill will be saved in .claude/skills/database-design/ and checked into git. All team members will have access to it automatically.
Important: Please verify the skill by reviewing its instructions before using it.
Database design principles and decision-making. Schema design, indexing strategy, ORM selection, serverless databases.
8 views
1 installs
Skill Content
--- name: database-design description: Database design principles and decision-making. Schema design, indexing strategy, ORM selection, serverless databases. allowed-tools: Read, Write, Edit, Glob, Grep --- # Database Design > **Learn to THINK, not copy SQL patterns.** ## 🎯 Selective Reading Rule **Read ONLY files relevant to the request!** Check the content map, find what you need. | File | Description | When to Read | |------|-------------|--------------| | `database-selection.md` | PostgreSQL vs Neon vs Turso vs SQLite | Choosing database | | `orm-selection.md` | Drizzle vs Prisma vs Kysely | Choosing ORM | | `schema-design.md` | Normalization, PKs, relationships | Designing schema | | `indexing.md` | Index types, composite indexes | Performance tuning | | `optimization.md` | N+1, EXPLAIN ANALYZE | Query optimization | | `migrations.md` | Safe migrations, serverless DBs | Schema changes | --- ## ⚠️ Core Principle - ASK user for database preferences when unclear - Choose database/ORM based on CONTEXT - Don't default to PostgreSQL for everything --- ## Decision Checklist Before designing schema: - [ ] Asked user about database preference? - [ ] Chosen database for THIS context? - [ ] Considered deployment environment? - [ ] Planned index strategy? - [ ] Defined relationship types? --- ## Anti-Patterns ❌ Default to PostgreSQL for simple apps (SQLite may suffice) ❌ Skip indexing ❌ Use SELECT * in production ❌ Store JSON when structured data is better ❌ Ignore N+1 queries