# emmadonjo/system-design-notes architecture

> Architecture diagram of the GitHub repository emmadonjo/system-design-notes, generated by GitDiagram from its file tree, README and a sample of source files (last updated 2026-11-11). It is an AI-made overview: check details against the source.

- Interactive diagram: https://gitdiagram.com/emmadonjo/system-design-notes
- Repository: https://github.com/emmadonjo/system-design-notes

## Overview

This repository is a collection of system-design interview notes, not a running application. A reader starts at the root index and follows links to individual chapter documents. The chapters cover foundational methods, distributed-system building blocks, product-system designs, and transaction-oriented systems. The README documents the chapter links; no implementation source or further runtime relationships were provided.

Main entry points: [`Readme.md`](https://github.com/emmadonjo/system-design-notes/blob/main/Readme.md) (Chapter Index), [`01. Scaling/Readme.md`](https://github.com/emmadonjo/system-design-notes/blob/main/01.%20Scaling/Readme.md) (Scaling), [`02. Back Of the Envelope Estimation/Readme.md`](https://github.com/emmadonjo/system-design-notes/blob/main/02.%20Back%20Of%20the%20Envelope%20Estimation/Readme.md) (Estimation), [`03. System Design Framework/Readme.md`](https://github.com/emmadonjo/system-design-notes/blob/main/03.%20System%20Design%20Framework/Readme.md) (Design Framework)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_foundations["Foundations"]
  node_scaling["Scaling<br/>[Readme.md]"]
  node_estimation["Estimation<br/>[Readme.md]"]
  node_framework["Design Framework<br/>[Readme.md]"]
end

subgraph group_building_blocks["Building Blocks"]
  node_rate_limiter["Rate Limiter<br/>[Readme.md]"]
  node_hashing["Consistent Hashing<br/>[Readme.md]"]
  node_key_value["Key-Value Store<br/>[Readme.md]"]
  node_unique_id["Unique ID<br/>[Readme.md]"]
end

subgraph group_product_systems["Product Systems"]
  node_url_shortener["URL Shortener<br/>[Readme.md]"]
  node_crawler["Web Crawler<br/>[Readme.md]"]
  node_notification["Notifications<br/>[Readme.md]"]
  node_news_feed["News Feed<br/>[Readme.md]"]
  node_chat["Chat<br/>[Readme.md]"]
  node_autocomplete["Search Autocomplete<br/>[Readme.md]"]
  node_youtube["YouTube<br/>[Readme.md]"]
  node_drive["Google Drive<br/>[Readme.md]"]
  node_proximity["Proximity Service<br/>[Readme.md]"]
  node_nearby["Nearby Friends<br/>[README.md]"]
  node_maps["Google Maps<br/>[README.md]"]
end

subgraph group_platform_systems["Platform Systems"]
  node_message_queue["Message Queue<br/>[README.md]"]
  node_monitoring["Monitoring and Alerting<br/>[README.md]"]
  node_ad_aggregation["Ad Click Aggregation<br/>[README.md]"]
  node_email["Distributed Email<br/>[README.md]"]
  node_object_storage["Object Storage<br/>[README.md]"]
end

subgraph group_transaction_systems["Transaction Systems"]
  node_hotel["Hotel Reservations<br/>[README.md]"]
  node_leaderboard["Gaming Leaderboard<br/>[README.md]"]
  node_payment["Payment System<br/>[README.md]"]
  node_wallet["Digital Wallet<br/>[README.md]"]
  node_exchange["Stock Exchange<br/>[README.md]"]
end

node_reader(("Reader"))
node_index["Chapter Index<br/>[Readme.md]"]

node_reader -->|"opens"| node_index
node_index -->|"links"| node_scaling
node_index -->|"links"| node_estimation
node_index -->|"links"| node_framework
node_index -->|"links"| node_rate_limiter
node_index -->|"links"| node_hashing
node_index -->|"links"| node_key_value
node_index -->|"links"| node_unique_id
node_index -->|"links"| node_url_shortener
node_index -->|"links"| node_crawler
node_index -->|"links"| node_notification
node_index -->|"links"| node_news_feed
node_index -->|"links"| node_chat
node_index -->|"links"| node_autocomplete
node_index -->|"links"| node_youtube
node_index -->|"links"| node_drive
node_index -->|"links"| node_proximity
node_index -->|"links"| node_nearby
node_index -->|"links"| node_maps
node_index -->|"links"| node_message_queue
node_index -->|"links"| node_monitoring
node_index -->|"links"| node_ad_aggregation
node_index -->|"links"| node_hotel
node_index -->|"links"| node_email
node_index -->|"links"| node_object_storage
node_index -->|"links"| node_leaderboard
node_index -->|"links"| node_payment
node_index -->|"links"| node_wallet
node_index -->|"links"| node_exchange

click node_index "https://github.com/emmadonjo/system-design-notes/blob/main/Readme.md"
click node_scaling "https://github.com/emmadonjo/system-design-notes/blob/main/01.%20Scaling/Readme.md"
click node_estimation "https://github.com/emmadonjo/system-design-notes/blob/main/02.%20Back%20Of%20the%20Envelope%20Estimation/Readme.md"
click node_framework "https://github.com/emmadonjo/system-design-notes/blob/main/03.%20System%20Design%20Framework/Readme.md"
click node_rate_limiter "https://github.com/emmadonjo/system-design-notes/blob/main/04.%20Rate%20Limiter/Readme.md"
click node_hashing "https://github.com/emmadonjo/system-design-notes/blob/main/05.%20Consistent%20Hashing/Readme.md"
click node_key_value "https://github.com/emmadonjo/system-design-notes/blob/main/06.%20Key-Value%20Store/Readme.md"
click node_unique_id "https://github.com/emmadonjo/system-design-notes/blob/main/07.%20Unique-Id%20Generator/Readme.md"
click node_url_shortener "https://github.com/emmadonjo/system-design-notes/blob/main/08.%20URL%20Shortener/Readme.md"
click node_crawler "https://github.com/emmadonjo/system-design-notes/blob/main/09.%20Web%20Crawler/Readme.md"
click node_notification "https://github.com/emmadonjo/system-design-notes/blob/main/10.%20Notification%20System/Readme.md"
click node_news_feed "https://github.com/emmadonjo/system-design-notes/blob/main/11.%20News%20Feed%20System/Readme.md"
click node_chat "https://github.com/emmadonjo/system-design-notes/blob/main/12.%20Chat%20System/Readme.md"
click node_autocomplete "https://github.com/emmadonjo/system-design-notes/blob/main/13.%20Search%20Autocomplete/Readme.md"
click node_youtube "https://github.com/emmadonjo/system-design-notes/blob/main/14.%20Youtube/Readme.md"
click node_drive "https://github.com/emmadonjo/system-design-notes/blob/main/15.%20Google%20Drive/Readme.md"
click node_proximity "https://github.com/emmadonjo/system-design-notes/blob/main/16.%20Proximity%20Service/Readme.md"
click node_nearby "https://github.com/emmadonjo/system-design-notes/blob/main/17.%20Nearby%20Friends/README.md"
click node_maps "https://github.com/emmadonjo/system-design-notes/blob/main/18.%20Google%20Maps/README.md"
click node_message_queue "https://github.com/emmadonjo/system-design-notes/blob/main/19.%20Distributed%20Message%20Queue/README.md"
click node_monitoring "https://github.com/emmadonjo/system-design-notes/blob/main/20.%20Metrics%20Monitoring%20and%20Alerting%20System/README.md"
click node_ad_aggregation "https://github.com/emmadonjo/system-design-notes/blob/main/21.%20Ad%20Click%20Event%20Aggregation/README.md"
click node_email "https://github.com/emmadonjo/system-design-notes/blob/main/23.%20Distributed%20Email%20Service/README.md"
click node_object_storage "https://github.com/emmadonjo/system-design-notes/blob/main/24.%20S3-like%20Object%20Storage/README.md"
click node_hotel "https://github.com/emmadonjo/system-design-notes/blob/main/22.%20Hotel%20Reservation%20System/README.md"
click node_leaderboard "https://github.com/emmadonjo/system-design-notes/blob/main/25.%20Real-time%20Gaming%20Leaderboard/README.md"
click node_payment "https://github.com/emmadonjo/system-design-notes/blob/main/26.%20Payment%20System/README.md"
click node_wallet "https://github.com/emmadonjo/system-design-notes/blob/main/27.%20%20Digital%20Wallet/README.md"
click node_exchange "https://github.com/emmadonjo/system-design-notes/blob/main/28.%20Stock%20Exchange/README.md"

classDef toneNeutral fill:#f8fafc,stroke:#334155,stroke-width:1.5px,color:#0f172a
classDef toneBlue fill:#dbeafe,stroke:#2563eb,stroke-width:1.5px,color:#172554
classDef toneAmber fill:#fef3c7,stroke:#d97706,stroke-width:1.5px,color:#78350f
classDef toneMint fill:#dcfce7,stroke:#16a34a,stroke-width:1.5px,color:#14532d
classDef toneRose fill:#ffe4e6,stroke:#e11d48,stroke-width:1.5px,color:#881337
classDef toneIndigo fill:#e0e7ff,stroke:#4f46e5,stroke-width:1.5px,color:#312e81
classDef toneTeal fill:#ccfbf1,stroke:#0f766e,stroke-width:1.5px,color:#134e4a
class node_scaling,node_estimation,node_framework toneBlue
class node_rate_limiter,node_hashing,node_key_value,node_unique_id toneAmber
class node_url_shortener,node_crawler,node_notification,node_news_feed,node_chat,node_autocomplete,node_youtube,node_drive,node_proximity,node_nearby,node_maps toneMint
class node_message_queue,node_monitoring,node_ad_aggregation,node_email,node_object_storage toneRose
class node_hotel,node_leaderboard,node_payment,node_wallet,node_exchange,node_reader toneIndigo
class node_index toneTeal
```

## Components

### Foundations

- [Scaling](https://github.com/emmadonjo/system-design-notes/blob/main/01.%20Scaling/Readme.md): `01. Scaling/Readme.md`
- [Estimation](https://github.com/emmadonjo/system-design-notes/blob/main/02.%20Back%20Of%20the%20Envelope%20Estimation/Readme.md): `02. Back Of the Envelope Estimation/Readme.md`
- [Design Framework](https://github.com/emmadonjo/system-design-notes/blob/main/03.%20System%20Design%20Framework/Readme.md): `03. System Design Framework/Readme.md`

### Building Blocks

- [Rate Limiter](https://github.com/emmadonjo/system-design-notes/blob/main/04.%20Rate%20Limiter/Readme.md): `04. Rate Limiter/Readme.md`
- [Consistent Hashing](https://github.com/emmadonjo/system-design-notes/blob/main/05.%20Consistent%20Hashing/Readme.md): `05. Consistent Hashing/Readme.md`
- [Key-Value Store](https://github.com/emmadonjo/system-design-notes/blob/main/06.%20Key-Value%20Store/Readme.md): `06. Key-Value Store/Readme.md`
- [Unique ID](https://github.com/emmadonjo/system-design-notes/blob/main/07.%20Unique-Id%20Generator/Readme.md): `07. Unique-Id Generator/Readme.md`

### Product Systems

- [URL Shortener](https://github.com/emmadonjo/system-design-notes/blob/main/08.%20URL%20Shortener/Readme.md): `08. URL Shortener/Readme.md`
- [Web Crawler](https://github.com/emmadonjo/system-design-notes/blob/main/09.%20Web%20Crawler/Readme.md): `09. Web Crawler/Readme.md`
- [Notifications](https://github.com/emmadonjo/system-design-notes/blob/main/10.%20Notification%20System/Readme.md): `10. Notification System/Readme.md`
- [News Feed](https://github.com/emmadonjo/system-design-notes/blob/main/11.%20News%20Feed%20System/Readme.md): `11. News Feed System/Readme.md`
- [Chat](https://github.com/emmadonjo/system-design-notes/blob/main/12.%20Chat%20System/Readme.md): `12. Chat System/Readme.md`
- [Search Autocomplete](https://github.com/emmadonjo/system-design-notes/blob/main/13.%20Search%20Autocomplete/Readme.md): `13. Search Autocomplete/Readme.md`
- [YouTube](https://github.com/emmadonjo/system-design-notes/blob/main/14.%20Youtube/Readme.md): `14. Youtube/Readme.md`
- [Google Drive](https://github.com/emmadonjo/system-design-notes/blob/main/15.%20Google%20Drive/Readme.md): `15. Google Drive/Readme.md`
- [Proximity Service](https://github.com/emmadonjo/system-design-notes/blob/main/16.%20Proximity%20Service/Readme.md): `16. Proximity Service/Readme.md`
- [Nearby Friends](https://github.com/emmadonjo/system-design-notes/blob/main/17.%20Nearby%20Friends/README.md): `17. Nearby Friends/README.md`
- [Google Maps](https://github.com/emmadonjo/system-design-notes/blob/main/18.%20Google%20Maps/README.md): `18. Google Maps/README.md`

### Platform Systems

- [Message Queue](https://github.com/emmadonjo/system-design-notes/blob/main/19.%20Distributed%20Message%20Queue/README.md): `19. Distributed Message Queue/README.md`
- [Monitoring and Alerting](https://github.com/emmadonjo/system-design-notes/blob/main/20.%20Metrics%20Monitoring%20and%20Alerting%20System/README.md): `20. Metrics Monitoring and Alerting System/README.md`
- [Ad Click Aggregation](https://github.com/emmadonjo/system-design-notes/blob/main/21.%20Ad%20Click%20Event%20Aggregation/README.md): `21. Ad Click Event Aggregation/README.md`
- [Distributed Email](https://github.com/emmadonjo/system-design-notes/blob/main/23.%20Distributed%20Email%20Service/README.md): `23. Distributed Email Service/README.md`
- [Object Storage](https://github.com/emmadonjo/system-design-notes/blob/main/24.%20S3-like%20Object%20Storage/README.md): `24. S3-like Object Storage/README.md`

### Transaction Systems

- [Hotel Reservations](https://github.com/emmadonjo/system-design-notes/blob/main/22.%20Hotel%20Reservation%20System/README.md): `22. Hotel Reservation System/README.md`
- [Gaming Leaderboard](https://github.com/emmadonjo/system-design-notes/blob/main/25.%20Real-time%20Gaming%20Leaderboard/README.md): `25. Real-time Gaming Leaderboard/README.md`
- [Payment System](https://github.com/emmadonjo/system-design-notes/blob/main/26.%20Payment%20System/README.md): `26. Payment System/README.md`
- [Digital Wallet](https://github.com/emmadonjo/system-design-notes/blob/main/27.%20%20Digital%20Wallet/README.md): `27. Digital Wallet/README.md`
- [Stock Exchange](https://github.com/emmadonjo/system-design-notes/blob/main/28.%20Stock%20Exchange/README.md): `28. Stock Exchange/README.md`

### Other components

- **Reader**
- [Chapter Index](https://github.com/emmadonjo/system-design-notes/blob/main/Readme.md): `Readme.md`

## Connections

- Reader → Chapter Index: opens (evidence: `Readme.md`)
- Chapter Index → Scaling: links (evidence: `Readme.md`)
- Chapter Index → Estimation: links (evidence: `Readme.md`)
- Chapter Index → Design Framework: links (evidence: `Readme.md`)
- Chapter Index → Rate Limiter: links (evidence: `Readme.md`)
- Chapter Index → Consistent Hashing: links (evidence: `Readme.md`)
- Chapter Index → Key-Value Store: links (evidence: `Readme.md`)
- Chapter Index → Unique ID: links (evidence: `Readme.md`)
- Chapter Index → URL Shortener: links (evidence: `Readme.md`)
- Chapter Index → Web Crawler: links (evidence: `Readme.md`)
- Chapter Index → Notifications: links (evidence: `Readme.md`)
- Chapter Index → News Feed: links (evidence: `Readme.md`)
- Chapter Index → Chat: links (evidence: `Readme.md`)
- Chapter Index → Search Autocomplete: links (evidence: `Readme.md`)
- Chapter Index → YouTube: links (evidence: `Readme.md`)
- Chapter Index → Google Drive: links (evidence: `Readme.md`)
- Chapter Index → Proximity Service: links (evidence: `Readme.md`)
- Chapter Index → Nearby Friends: links (evidence: `Readme.md`)
- Chapter Index → Google Maps: links (evidence: `Readme.md`)
- Chapter Index → Message Queue: links (evidence: `Readme.md`)
- Chapter Index → Monitoring and Alerting: links (evidence: `Readme.md`)
- Chapter Index → Ad Click Aggregation: links (evidence: `Readme.md`)
- Chapter Index → Hotel Reservations: links (evidence: `Readme.md`)
- Chapter Index → Distributed Email: links (evidence: `Readme.md`)
- Chapter Index → Object Storage: links (evidence: `Readme.md`)
- Chapter Index → Gaming Leaderboard: links (evidence: `Readme.md`)
- Chapter Index → Payment System: links (evidence: `Readme.md`)
- Chapter Index → Digital Wallet: links (evidence: `Readme.md`)
- Chapter Index → Stock Exchange: links (evidence: `Readme.md`)
