System design
Distributed systems design covering CAP theorem, load balancing, caching strategies, message queues, database sharding, consistency patterns, circuit breakers, architectural patterns (microservices, event-driven, serverless), and 12 key tradeoffs. Use when designing distributed systems, evaluating infrastructure tradeoffs, choosing databases, or understanding scalability patterns.From its SKILL.md
npx -y skills add itzcull/software-skills --skill system-designAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
One thing to look at
- 3 stars3 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
What its file declares
Copied from the file, not written here
The file declares its own license as MIT. That is the author’s claim about this one file, and it is not the same thing as the license GitHub reports for the repository, which is listed with the other numbers below.
SKILL.md
5.6 KB, as published. Nobody here has run it
Purpose
Provide comprehensive reference material on system design concepts. Covers building blocks, architectural patterns, key concepts, and tradeoffs for designing reliable distributed systems.
When to use
- Designing a new distributed system or service
- Choosing between architectural patterns (microservices, event-driven, serverless)
- Evaluating database choices (SQL vs NoSQL, sharding, replication)
- Understanding caching strategies and consistency models
- Making scalability decisions (vertical vs horizontal, sync vs async)
- Evaluating tradeoffs (latency vs throughput, strong vs eventual consistency)
Key concepts
- CAP Theorem - consistency, availability, partition tolerance tradeoff
- Idempotency - operations safe to retry
- Circuit Breakers - prevent cascade failures
- Eventual Consistency - temporary inconsistency for availability
- Design for failure - distributed systems fail in partial, unpredictable ways
Related
- Use the
system-designeragent for interactive architectural decisions
Reference files
Architectural Patterns
Building Blocks
- API Gateway
- APIs
- Bloom Filters
- Caching
- Caching Strategies
- Checksums
- Circuit Breaker
- CDN
- Consistency Patterns
- Data Redundancy
- Data Replication
- Database Architectures
- Database Indexes
- Database Scaling
- Database Sharding
- Database Types
- Distributed Caching
- Distributed Locking
- DNS
- Failover
- Heartbeats
- Idempotency
- Load Balancing
- Message Queues
- Microservices Guidelines
- Proxy vs Reverse Proxy
- SQL vs NoSQL
- WebSockets
Key Concepts
- ACID Transactions
- API Design
- Availability
- CAP Theorem
- Consensus Algorithms
- Consistent Hashing
- Disaster Recovery
- Distributed Tracing
- Fault Tolerance
- Gossip Protocol
- Rate Limiting
- Scalability
- Service Discovery
- Single Point of Failure