design-doc-generator
Original:🇺🇸 English
Translated
This skill should be used when the user asks to "generate design document", "create database schema", "design API interface", "draw flowchart", "create sequence diagram", "design system architecture", "design module structure", "create data flow diagram", or mentions technical design documentation. Generates comprehensive technical design documents with database schemas, API specs, and Mermaid diagrams.
2installs
Added on
NPX Install
npx skill4agent add chaorenex1/coding-workflow design-doc-generatorTags
Translated version includes tags in frontmatterSKILL.md Content
View Translation Comparison →Design Doc Generator - Technical Design Documentation Assistant
Purpose
Design Doc Generator creates comprehensive technical design documents for software projects. The skill generates production-ready documentation covering database schemas, system architecture, API specifications, and visual diagrams using Mermaid syntax.
When to Use This Skill
Use this skill when:
- Creating a new project and need complete technical design documentation
- Designing database schemas with relationships and constraints
- Defining RESTful API endpoints and request/response formats
- Planning system architecture and module layering
- Documenting business processes with flowcharts
- Visualizing component interactions with sequence diagrams
- Mapping data flow through system layers
- Onboarding team members to existing codebase architecture
Core Capabilities
1. Database Schema Design
Generate complete database table definitions with fields, types, constraints, indexes, and relationships.
Process:
- Analyze requirements to identify entities and their attributes
- Define primary keys, foreign keys, and constraints
- Specify data types, defaults, and nullable fields
- Design indexes for query optimization
- Document table relationships (one-to-one, one-to-many, many-to-many)
- Reference for standard format
templates/database-schema.md
Output includes:
- Table definitions with field specifications
- Entity-Relationship diagram (Mermaid ER diagram)
- Index recommendations with justification
- Migration scripts or DDL statements
2. Module Layering Design
Design system architecture with clear separation of concerns across layers.
Process:
- Identify architectural layers (presentation, business, data, infrastructure)
- Define module boundaries and responsibilities
- Specify dependencies between layers
- Establish communication patterns
- Reference for architectural patterns
references/design-patterns.md
Output includes:
- Layer architecture diagram
- Module responsibility matrix
- Dependency graph
- Data flow between layers
3. Module Interface Design
Define contracts between modules with clear input/output specifications.
Process:
- Identify module boundaries from requirements
- Define function/method signatures
- Specify data structures for module communication
- Document error handling and return codes
- Reference for interface format
templates/module-design.md
Output includes:
- Interface definitions
- Data transfer objects (DTOs)
- Error handling specifications
- Module dependency list
4. API Interface Design
Design RESTful API endpoints following industry best practices.
Process:
- Identify resources from domain model
- Map CRUD operations to HTTP methods
- Define request/response schemas
- Specify status codes and error responses
- Document authentication and authorization
- Reference for API documentation format
templates/api-spec.md
Output includes:
- Endpoint list with methods and paths
- Request/response examples (JSON)
- Authentication requirements
- Rate limiting and pagination specs
- OpenAPI/Swagger specification
5. Business Flowchart
Create visual business process diagrams using Mermaid syntax.
Process:
- Identify key business processes from requirements
- Map decision points and branching logic
- Define start/end states and conditions
- Specify actors and swimlanes if needed
- Reference for flowchart syntax
references/mermaid-diagrams.md
Output includes:
- Mermaid flowchart code
- Process descriptions per step
- Decision logic documentation
- Alternative flow paths
6. Data Flow Diagram
Visualize how data moves through the system from input to persistence.
Process:
- Trace data from external input through system layers
- Identify data transformations at each stage
- Specify data stores and external systems
- Document data formats at each boundary
- Reference for DFD syntax
references/mermaid-diagrams.md
Output includes:
- Level 0 DFD (context diagram)
- Level 1 DFD (decomposed processes)
- Data dictionary defining all data elements
- Data transformation rules
7. Sequence Diagram
Generate sequence diagrams showing component interactions over time.
Process:
- Identify actors and components
- Map message flow for key operations
- Specify synchronous vs asynchronous calls
- Document error scenarios and timeouts
- Reference for sequence diagram syntax
references/mermaid-diagrams.md
Output includes:
- Mermaid sequence diagram code
- Message descriptions with parameters
- Lifeline documentation
- Alternative flows and error handling
Workflow Integration
New Project Design
- Requirements Analysis → Extract entities, processes, and use cases
- Database Design → Generate schema with ER diagram
- Architecture Design → Create module layering and interfaces
- API Design → Define RESTful endpoints
- Documentation → Generate all diagrams and compile design document
Existing Project Documentation
- Code Analysis → Parse existing code structure
- Reverse Engineering → Extract schemas and API patterns
- Documentation Generation → Create comprehensive design docs
- Gap Analysis → Identify missing or inconsistent elements
Incremental Updates
- Change Request → Identify affected components
- Impact Analysis → Update relevant diagrams and schemas
- Version Documentation → Track changes and maintain history
Design Document Structure
Generate documents following this outline:
markdown
# [Project Name] Technical Design Document
## 1. Overview
- Project background
- System objectives
- Scope and boundaries
## 2. System Architecture
- Architecture diagram
- Layer descriptions
- Technology stack
## 3. Database Design
- ER diagram
- Table definitions
- Index strategy
## 4. Module Design
- Module breakdown
- Interface specifications
- Dependencies
## 5. API Design
- Endpoint specifications
- Request/response formats
- Authentication
## 6. Business Processes
- Flowcharts
- Process descriptions
## 7. Data Flow
- Data flow diagrams
- Data dictionary
## 8. Sequence Diagrams
- Key operations
- Component interactionsAdditional Resources
Template Files
Ready-to-use templates for consistent documentation:
- - Database schema template with ER diagram
templates/database-schema.md - - API specification template following OpenAPI standards
templates/api-spec.md - - Module interface design template
templates/module-design.md
Reference Files
Detailed guides and best practices:
- - Architectural patterns (Layered, Hexagonal, Clean Architecture)
references/design-patterns.md - - Mermaid syntax guide for all diagram types
references/mermaid-diagrams.md
Example Files
Complete working examples:
- - Full design document for e-commerce system
examples/ecommerce-design-doc.md
Best Practices
- Start with requirements: Ensure design aligns with business needs before documenting
- Iterative refinement: Update docs as design evolves; treat as living documents
- Diagram consistency: Use consistent naming and styling across all diagrams
- Version control: Track design changes alongside code changes
- Stakeholder review: Validate technical design with both technical and business stakeholders
- Mermaid validation: Verify Mermaid syntax renders correctly in supported viewers
Common Use Cases
Scenario 1: New Microservice
- Generate database schema for service-specific data
- Design REST API for service communication
- Create sequence diagrams showing service interactions
Scenario 2: Legacy System Migration
- Document existing system architecture
- Design target architecture with module boundaries
- Map data flows between old and new systems
Scenario 3: Feature Addition
- Identify affected modules and tables
- Update API with new endpoints
- Document new business processes
Scenario 4: Team Onboarding
- Generate comprehensive design documentation
- Create visual diagrams for quick understanding
- Document module interfaces for integration guidance
Diagram Syntax Quick Reference
ER Diagram:
mermaid
erDiagram
USERS ||--o{ ORDERS : places
USERS {
int id PK
string name
string email
}Flowchart:
mermaid
flowchart TD
A[Start] --> B{Decision}
B -->|Yes| C[Action 1]
B -->|No| D[Action 2]Sequence Diagram:
mermaid
sequenceDiagram
actor User
participant API
participant DB
User->>API: Request
API->>DB: Query
DB-->>API: Result
API-->>User: ResponseTechnical Requirements
- Mermaid support: Documentation viewer must support Mermaid rendering
- Markdown output: All documentation in Markdown format
- UTF-8 encoding: Ensure proper handling of special characters
- Version control: Design documents should be tracked in Git
Limitations
- Mermaid diagrams may not render in all markdown viewers
- Database schema generation assumes relational database patterns
- Complex sequence diagrams may become difficult to read; consider splitting
- Generated documentation requires human review for business-specific context