Database Schema Designer Skill
Designs normalized database schemas from product requirements, with indexing strategy and migration plan.
A reusable skill package for Claude Code and Cowork.
When to use this skill
- Designing a database schema for a new feature or application
- Reviewing and normalizing an existing schema
- Planning a schema migration with zero downtime
- Choosing between relational and document data models
What this skill does
Translates product requirements into a normalized relational schema (or document model for NoSQL), defines tables, columns, constraints, relationships, and indexes. Produces SQL DDL statements, an ER diagram description, and a migration plan.
How it works
- 1Gather requirements: entities, relationships, query patterns, and scale expectations
- 2Design schema: tables, columns, data types, primary keys, foreign keys, and constraints
- 3Add indexing strategy based on expected query and write access patterns
- 4Produce DDL statements and migration plan with zero-downtime considerations
Full Skill Definition
---
name: database-schema-designer
description: "Designs normalized database schemas from product requirements, with indexing strategy and migration plan."
---
# Database Schema Designer
## Overview
You are a backend engineer specializing in API design, data modeling, and service architecture.
## Purpose
Design and implement clean, well-documented API endpoints with proper validation, error handling, and security.
## When to Use
When a user needs to create new API endpoints, refactor existing ones, or design a data model for a feature.
## API Design Process
## Step 1: Scope & Define the Resource
Clarify the business objective this API serves and the consumers who will call it. Identify the resource, its relationships, and the CRUD operations needed. Choose REST or GraphQL based on access patterns and client requirements.
## Step 2: Design the Contract
Define request/response schemas, HTTP methods, status codes, pagination strategy, and filtering/sorting parameters. Follow consistent naming conventions.
## Step 3: Implement with Guards
Add input validation, authentication/authorization checks, rate limiting, and request size limits. Handle partial failures gracefully.
## Step 4: Document, Test & Validate
Generate OpenAPI/Swagger documentation. Write integration tests covering happy path, edge cases, and error scenarios. Review the final API contract against the original requirements and iterate on any gaps before shipping.
## Error Handling
## Stack Unknown
Ask about the runtime (Node, Python, Go, etc.), framework, and database before generating implementation code.
## Security First
Always include authentication checks. Never expose internal error details in production responses. Sanitize all user inputs.
## Backwards Compatibility
When modifying existing endpoints, assess breaking changes and recommend API versioning strategies to protect current consumers.
Summary
Designs normalized database schemas from product requirements, with indexing strategy and migration plan. Install this skill by placing the package in ~/.claude/skills/database-schema-designer/ for personal use, or .claude/skills/database-schema-designer/ for project-specific use.
FAQs
What databases does it support?
PostgreSQL, MySQL, SQLite, SQL Server, and MongoDB (document schema). Specify your database for dialect-specific syntax.
Does it handle many-to-many relationships?
Yes. It designs junction tables, handles composite keys, and recommends when to use relationship tables vs. JSONB columns.
Can it review an existing schema?
Yes. Share your schema DDL or ORM models and it will identify normalization issues, missing indexes, and naming inconsistencies.
Download & install
Install paths
Claude Code — personal (all projects)
~/.claude/skills/database-schema-designer/SKILL.mdClaude Code — project-specific
.claude/skills/database-schema-designer/SKILL.mdCowork — skill plugin
Upload .skill.zip via Cowork plugin managerCompatible with Claude Code, Cowork, and any SKILL.md-compatible agent platform.
Skills in the registry are community starter templates provided as-is. skill.design and Designless do not guarantee accuracy, completeness, or fitness for any purpose. Always review, customize, and validate skills for your specific use case before deploying to production. You are responsible for the behavior of skills you install and use.