MCPcopy
hub / github.com/ashishps1/awesome-low-level-design

github.com/ashishps1/awesome-low-level-design @main sqlite

repository ↗ · DeepWiki ↗
8,126 symbols 19,057 edges 1,821 files 391 documented · 5%
README

Join Free Newsletter

This repository contains resources to learn Low Level Design (LLD) / Object Oriented Design (OOD) and prepare for interviews. It covers OOP fundamentals, design patterns, UML, concurrency and commonly asked interview questions.

👉 For a better and more comprehensive experience, checkout the LLD page at AlgoMaster.io

🧱 OOP Fundamentals

🔗 Class Relationships

🧭 Design Principles

🧩 Design Patterns

Creational Patterns Structural Patterns Behavioral Patterns
Singleton Adapter Iterator
Factory Method Bridge Observer
Abstract Factory Composite Strategy
Builder Decorator Command
Prototype Facade State
Flyweight Template Method
Proxy Visitor
Mediator
Memento
Chain of Responsibility

🗂️ UML

⏱️ Concurrency and Multi-threading Concepts

Concurrency 101

Synchronization Primitives

Concurrency Challenges

Concurrency Patterns

How to Answer a LLD Interview Problem

💻 Low Level Design Interview Problems

Easy Problems

Medium Problems

Hard Problems

⏱️ Concurrency and Multi-threading Problems

📇 Courses

📚 Books

📩 Newsletter

Additional resources

🤝 Contributing

Contributions are welcome! If you'd like to add a new problem, improve existing content, or fix errors: 1. Fork the repository 2. Create a feature branch: git checkout -b feature/your-feature-name 3. Commit your changes: git commit -m 'Add some feature' 4. Push to the branch: git push origin feature/your-feature-name 5. Submit a pull request

Please make sure to update Readme files and documentation as appropriate.


If you find this resource helpful, please give it a star and share it with others!

Extension points exported contracts — how you extend this code

TaskSortingStrategy (Interface)
(no doc) [12 implementers]
solutions/typescript/src/TaskManagement/SortingStrategy/TaskSortingStrategy.ts
BillComponent (Interface)
(no doc) [6 implementers]
solutions/java/src/restaurantmanagementsystem/decorator/BillComponent.java
Subscription (Interface)
(no doc) [8 implementers]
design-patterns/java/factory/subscription/Subscription.java
Beverage (Interface)
Beverage defines the interface for all beverages [3 implementers]
design-patterns/golang/decorator/beverage.go
Transaction (Interface)
(no doc) [4 implementers]
solutions/golang/atm/transaction.go
SignalState (Interface)
(no doc) [6 implementers]
solutions/typescript/src/TrafficSignalSystem/SignalState/SignalState.ts
Command (Interface)
(no doc) [8 implementers]
solutions/java/src/restaurantmanagementsystem/command/Command.java
TextView (Interface)
(no doc) [6 implementers]
design-patterns/java/decorator/TextView.java

Core symbols most depended-on inside this repo

get
called by 168
solutions/java/src/lrucache/LRUCache.java
add
called by 130
design-patterns/Javascript/Structural Pattern/Composite Design Pattern/folder.js
log
called by 126
solutions/python/loggingframework/logger.py
getName
called by 113
solutions/typescript/src/TrafficSignalSystem/SignalState/SignalState.ts
put
called by 112
solutions/java/src/lrucache/LRUCache.java
getId
called by 108
solutions/java/src/pubsubsystem/subscriber/Subscriber.java
get
called by 90
solutions/python/lrucache/lru_cache.py
append
called by 79
solutions/java/src/loggingframework/strategies/appender/LogAppender.java

Shape

Method 5,671
Class 1,604
Function 347
Struct 265
Interface 140
Enum 65
TypeAlias 34

Languages

Java40%
Python35%
Go16%
TypeScript9%

Modules by API surface

solutions/python/taskmanagementsystem/task.py34 symbols
solutions/java/src/taskmanagementsystem/models/Task.java34 symbols
solutions/golang/vendingmachine/state.go31 symbols
design-patterns/Javascript/Creational Pattern/AbstractFactory Design Pattern/abstract.js30 symbols
solutions/golang/stackOverFlow/types.go29 symbols
solutions/python/stackoverflow/content.py27 symbols
solutions/python/vendingmachine/states.py26 symbols
solutions/python/ridesharingservice/trip_states.py25 symbols
solutions/python/ridesharingservice/trip.py25 symbols
solutions/python/coffeevendingmachine/states.py25 symbols
solutions/python/coffeevendingmachine/coffee.py25 symbols
solutions/java/src/ridesharingservice/entities/Trip.java25 symbols

Dependencies from manifests, versioned

org.junit.jupiter:junit-jupiter
@types/node20.10.0 · 1×
node-fetch3.3.1 · 1×
tsx4.7.1 · 1×
uuid11.1.0 · 1×

For agents

$ claude mcp add awesome-low-level-design \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact