Welcome to the System Design Repository! This repository is a collection of resources, examples, and guides for system design, focusing on both Low-Level Design (LLD) and High-Level Design (HLD).
This repository aims to provide resources to understand both aspects of system design i.e, LLD and HLD, along with super practical examples.
This repository have detailed content on the following topics.
-
- Class Diagram
- SOLID Principle
-
-
- Factory Pattern
- Abstract Factory
- Singleton Pattern
- Builder Pattern
- Prototype Pattern
-
- Decorator Pattern
- Proxy Pattern
- Composite Pattern
- Adapter Pattern
- Facade Pattern
- Flyweight Pattern
- Bridge Pattern
-
- Interpreter Pattern
- Visitor Pattern
- Mediator Pattern
- Iterator Pattern
- Command Pattern
- Memento Pattern
- Template Method Pattern
- State Pattern
- Chain of responsibility
- Strategy Pattern
- Observer Pattern
-
-
- Design tic-tac-toe game
- Design ATM Machine
- Design splitwise
- Design traffic light management system
- Design car rental system
- Design file system
- Design chess game
- Design snake ladder game
- Design concurrent Data Structure (e.g., Lock-Free Queue)
- Design parking lot
- Design elevator system
- Designing a Database Connection Pool
- Design logging system
- Design a compiler or Interpreter
- Design Vending machine
- Design movie booking System (eg- Book my show)
- Design A Browsers history
- Design simplified version of twitter
- Design text editor and LRU cache
This repository have detailed content on the following topics.
- CAP theorem
- Envelope Estimation
- Bloom filters
- Caching
- Load balancer
- Proxy & Reverse Proxy
- Replication
- Partitioning
- Consistent Hashing
- Rate limiter
- DNS
- Understand the scaling of each component
- Transaction
- Trouble with distributed system
- Consistency & Consensus
- Seven layered architecture
- JWT
- Service discovery
- Clock skewness
- Design a distributed key-value store
- Design unique id generator
- Design url shortener
- Design notification system
- Design a social media feed platform
- Design chat application like WhatsApp
- Design a distributed messaging system
- Design twitter search
- Design web crawler
- Design music streaming system
- Design video streaming system
- Design ride-sharing system (eg- Uber)
- Design a recommendation system (eg- Netflix)
- Design ecommerce platform (eg- Amazon)
- Design distributed search engine