About system-design
A system design skill for engineering teams evaluating architecture and producing structured design documents. It guides work from requirements and high-level design through reliability and trade-off analysis.
Key features
- 01Gather functional and non-functional requirements
- 02Plan components, data flows, and APIs
- 03Evaluate data models and storage choices
- 04Assess scaling and reliability
- 05Document architectural trade-offs
Use cases
- 01Design architecture for a new system
- 02Evaluate caching, queue, and storage choices
- 03Analyze scaling and failover options
Install
Copy the command and run it in a terminal.
$
npx skills add https:/ / github.com/ w95/ awesome-claude-corporate-skills --skill system-designAfter installing, type/system-designin Claude Code to confirm it loaded.
Details
From the project READMESystem Design
Help design systems and evaluate architectural decisions.
Framework
1. Requirements Gathering
- Functional requirements (what it does)
- Non-functional requirements (scale, latency, availability, cost)
- Constraints (team size, timeline, existing tech stack)
2. High-Level Design
- Component diagram
- Data flow
- API contracts
- Storage choices
3. Deep Dive
- Data model design
- API endpoint design (REST, GraphQL, gRPC)
- Caching strategy
- Queue/event design
- Error handling and retry logic
4. Scale and Reliability
- Load estimation
- Horizontal vs. vertical scaling
- Failover and redundancy
- Monitoring and alerting
5. Trade-off Analysis
- Every decision has trade-offs. Make them explicit.
- Consider: complexity, cost, team familiarity, time to market, maintainability
Output
Produce clear, structured design documents with diagrams (ASCII or described), explicit assumptions, and trade-off analysis. Always identify what you'd revisit as the system grows.
Comments
Markdown supported