designing-systems
Designing Systems
Workflows
- Requirements: Gather functional and non-functional requirements
- Diagrams: Create C4 diagrams (Context, Container)
- Data: Define data model and storage strategy
- API: Define interfaces and contracts
- Risks: Identify single points of failure
- Document: Save to
./artifacts/adr_[topic].md
Feedback Loops
- Draft design document
- Review with stakeholders
- Create POC for risky components
- Refine design based on POC
- Finalize ADR
Blueprint Template
Every system design should include:
- High-Level Diagram: Mermaid graph showing components
- Component Boundaries: Clear responsibility definitions
- API Definitions: OpenAPI or GraphQL specs
- Data Models: Schema definitions
- Trade-off Analysis: Rationale for key decisions
C4 Model Levels
Level 1: Context
Who uses the system? What external systems does it interact with?
Level 2: Container
What are the major deployable units? (APIs, databases, queues)
Level 3: Component
What are the major building blocks within each container?
Level 4: Code
Class/function level (usually not needed in architecture docs)
Trade-off Analysis
For major decisions, explicitly document:
| Decision | Option A | Option B |
|---|---|---|
| Pros | ... | ... |
| Cons | ... | ... |
| When to Choose | ... | ... |
Non-Functional Requirements
Always consider:
- Scalability: Expected load, growth rate
- Availability: SLA targets, failure modes
- Latency: P50, P95, P99 requirements
- Security: Authentication, authorization, data protection
- Cost: Infrastructure, operational overhead
Resources
More from dralgorhythm/claude-agentic-framework
react-native-reanimated
React Native Reanimated 4.x animation patterns. Use when adding animations, transitions, entering/exiting effects, or gesture-driven animations to React Native screens. Replaces Framer Motion for mobile.
105compliance
Ensure regulatory compliance. Use when implementing GDPR, HIPAA, PCI-DSS, or SOC2 requirements. Covers compliance frameworks and controls.
52brainstorming
Generate and explore ideas effectively. Use when starting new projects, solving problems, or exploring solutions. Covers ideation techniques and divergent thinking.
50security-review
Conduct security code reviews. Use when reviewing code for vulnerabilities, assessing security posture, or auditing applications. Covers security review checklist.
47optimizing-code
Improve code performance without changing behavior. Use when code fails latency/throughput requirements. Covers profiling, caching, and algorithmic optimization.
47debugging
Troubleshoot and fix bugs systematically. Use when errors occur, tests fail, or unexpected behavior is observed. Covers root cause analysis and debugging strategies.
46