skills/database-design/SKILL.md
Database design principles and decision-making. Schema design, indexing strategy, ORM selection, serverless databases.
npx skillsauth add williamlimasilva/.copilot database-designInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Learn to THINK, not copy SQL patterns.
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 |
Before designing schema:
❌ 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
tools
Create a new workshop or use an existing directory as one. Handles two paths: (A) use an existing local directory the operator points at, or (B) create a new private GitHub repo in the signed-in account. Never creates a repo inside another repo.
development
Guide for setting up vcpkg in C++ projects, managing dependency versions, and cross-compiling. Covers manifest initialization, CMake and Visual Studio integration, classic-to-manifest migration, version pinning, baselines, overrides, triplets, and cross-compilation. Use when a user is working with vcpkg project setup, installation, version management, or cross-platform builds. For specialized tasks, additional references cover custom registries and overlay ports (references/registries.md), CI/CD and binary caching (references/ci.md), and troubleshooting and dependency lifecycle (references/troubleshooting.md).
testing
Emit structured agent signals — hands-up, blocked, done, checkpoint, partnership. Signals are written as JSON to .signals/ for dashboard consumption and noted in the journal for persistence.
development
Install and configure Markstream streaming Markdown renderers for Vue, React, Svelte, Angular, Nuxt, and Vue 2 applications. Use for package selection, minimal peer dependencies, CSS order, SSR boundaries, streaming mode, and renderer setup.