# presmihaylov/booknotes architecture

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

- Interactive diagram: https://gitdiagram.com/presmihaylov/booknotes
- Repository: https://github.com/presmihaylov/booknotes

## Overview

This repository is a static collection of book, course, and talk notes, not a runtime application. A reader starts at the root category index, browses a subject area, then opens notes for a resource or chapter. The tree shows the major collections; only the root README was sampled, so links between individual collections and their chapter notes are omitted where navigation is not documented.

Main entry points: [`README.md`](https://github.com/presmihaylov/booknotes/blob/master/README.md) (Category Index), [`architecture/README.md`](https://github.com/presmihaylov/booknotes/blob/master/architecture/README.md) (Architecture Index), [`java/README.md`](https://github.com/presmihaylov/booknotes/blob/master/java/README.md) (Java Index), [`system-design/README.md`](https://github.com/presmihaylov/booknotes/blob/master/system-design/README.md) (System Design Index)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_architecture["Architecture"]
  node_architecture_index["Architecture Index<br/>[README.md]"]
  node_clean_architecture["Clean Architecture<br/>[README.md]"]
  node_design_patterns["Design Patterns<br/>[README.md]"]
  node_api_design["Good API Design<br/>[README.md]"]
end

subgraph group_java["Java"]
  node_java_index["Java Index<br/>[README.md]"]
  node_jcip["Concurrency in Practice<br/>[README.md]"]
  node_jenkov["Jenkov Concurrency<br/>[README.md]"]
  node_concurrency_jvm["Concurrency on JVM<br/>[README.md]"]
end

subgraph group_system["System Design"]
  node_system_index["System Design Index<br/>[README.md]"]
  node_system_interview["System Design Interview<br/>[README.md]"]
  node_distributed_systems["Distributed Systems"]
end

subgraph group_general["General"]
  node_general_index["General Index<br/>[README.md]"]
  node_antipatterns["Antipatterns<br/>[README.md]"]
  node_antipattern_arch["Architecture Antipatterns<br/>[README.md]"]
  node_antipattern_dev["Development Antipatterns<br/>[README.md]"]
  node_antipattern_project["Project Antipatterns<br/>[README.md]"]
end

subgraph group_selfhelp["Self-Help"]
  node_selfhelp_index["Self-Help Index<br/>[README.md]"]
  node_atomic_habits["Atomic Habits<br/>[README.md]"]
end

node_reader(("Reader"))
node_catalog["Category Index<br/>[README.md]"]

node_reader -->|"browses"| node_catalog
node_catalog -->|"lists"| node_architecture_index
node_catalog -->|"lists"| node_java_index
node_catalog -->|"lists"| node_system_index
node_catalog -->|"lists"| node_general_index
node_catalog -->|"lists"| node_selfhelp_index
node_reader -->|"opens"| node_architecture_index
node_reader -->|"opens"| node_java_index
node_reader -->|"opens"| node_system_index
node_reader -->|"opens"| node_general_index
node_reader -->|"opens"| node_selfhelp_index

click node_catalog "https://github.com/presmihaylov/booknotes/blob/master/README.md"
click node_architecture_index "https://github.com/presmihaylov/booknotes/blob/master/architecture/README.md"
click node_clean_architecture "https://github.com/presmihaylov/booknotes/blob/master/architecture/clean-architecture/README.md"
click node_design_patterns "https://github.com/presmihaylov/booknotes/blob/master/architecture/design-patterns/README.md"
click node_api_design "https://github.com/presmihaylov/booknotes/blob/master/architecture/good-api-design-jb-talk/README.md"
click node_java_index "https://github.com/presmihaylov/booknotes/blob/master/java/README.md"
click node_jcip "https://github.com/presmihaylov/booknotes/blob/master/java/java-concurrency-in-practice/README.md"
click node_jenkov "https://github.com/presmihaylov/booknotes/blob/master/java/jenkov-concurrency/README.md"
click node_concurrency_jvm "https://github.com/presmihaylov/booknotes/blob/master/java/programming-concurrency-jvm/README.md"
click node_system_index "https://github.com/presmihaylov/booknotes/blob/master/system-design/README.md"
click node_system_interview "https://github.com/presmihaylov/booknotes/blob/master/system-design/system-design-interview/README.md"
click node_distributed_systems "https://github.com/presmihaylov/booknotes/tree/master/system-design/understanding-distributed-systems"
click node_general_index "https://github.com/presmihaylov/booknotes/blob/master/general/README.md"
click node_antipatterns "https://github.com/presmihaylov/booknotes/blob/master/general/antipatterns/README.md"
click node_antipattern_arch "https://github.com/presmihaylov/booknotes/blob/master/general/antipatterns/sw-architecture/README.md"
click node_antipattern_dev "https://github.com/presmihaylov/booknotes/blob/master/general/antipatterns/sw-dev/README.md"
click node_antipattern_project "https://github.com/presmihaylov/booknotes/blob/master/general/antipatterns/sw-projectmgmt/README.md"
click node_selfhelp_index "https://github.com/presmihaylov/booknotes/blob/master/self-help/README.md"
click node_atomic_habits "https://github.com/presmihaylov/booknotes/blob/master/self-help/atomic-habits/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_architecture_index,node_clean_architecture,node_design_patterns,node_api_design toneBlue
class node_java_index,node_jcip,node_jenkov,node_concurrency_jvm toneAmber
class node_system_index,node_system_interview,node_distributed_systems toneMint
class node_general_index,node_antipatterns,node_antipattern_arch,node_antipattern_dev,node_antipattern_project toneRose
class node_selfhelp_index,node_atomic_habits,node_reader toneIndigo
class node_catalog toneTeal
```

## Components

### Architecture

- [Architecture Index](https://github.com/presmihaylov/booknotes/blob/master/architecture/README.md): `architecture/README.md`
- [Clean Architecture](https://github.com/presmihaylov/booknotes/blob/master/architecture/clean-architecture/README.md): `architecture/clean-architecture/README.md`
- [Design Patterns](https://github.com/presmihaylov/booknotes/blob/master/architecture/design-patterns/README.md): `architecture/design-patterns/README.md`
- [Good API Design](https://github.com/presmihaylov/booknotes/blob/master/architecture/good-api-design-jb-talk/README.md): `architecture/good-api-design-jb-talk/README.md`

### Java

- [Java Index](https://github.com/presmihaylov/booknotes/blob/master/java/README.md): `java/README.md`
- [Concurrency in Practice](https://github.com/presmihaylov/booknotes/blob/master/java/java-concurrency-in-practice/README.md): `java/java-concurrency-in-practice/README.md`
- [Jenkov Concurrency](https://github.com/presmihaylov/booknotes/blob/master/java/jenkov-concurrency/README.md): `java/jenkov-concurrency/README.md`
- [Concurrency on JVM](https://github.com/presmihaylov/booknotes/blob/master/java/programming-concurrency-jvm/README.md): `java/programming-concurrency-jvm/README.md`

### System Design

- [System Design Index](https://github.com/presmihaylov/booknotes/blob/master/system-design/README.md): `system-design/README.md`
- [System Design Interview](https://github.com/presmihaylov/booknotes/blob/master/system-design/system-design-interview/README.md): `system-design/system-design-interview/README.md`
- [Distributed Systems](https://github.com/presmihaylov/booknotes/tree/master/system-design/understanding-distributed-systems): `system-design/understanding-distributed-systems`

### General

- [General Index](https://github.com/presmihaylov/booknotes/blob/master/general/README.md): `general/README.md`
- [Antipatterns](https://github.com/presmihaylov/booknotes/blob/master/general/antipatterns/README.md): `general/antipatterns/README.md`
- [Architecture Antipatterns](https://github.com/presmihaylov/booknotes/blob/master/general/antipatterns/sw-architecture/README.md): `general/antipatterns/sw-architecture/README.md`
- [Development Antipatterns](https://github.com/presmihaylov/booknotes/blob/master/general/antipatterns/sw-dev/README.md): `general/antipatterns/sw-dev/README.md`
- [Project Antipatterns](https://github.com/presmihaylov/booknotes/blob/master/general/antipatterns/sw-projectmgmt/README.md): `general/antipatterns/sw-projectmgmt/README.md`

### Self-Help

- [Self-Help Index](https://github.com/presmihaylov/booknotes/blob/master/self-help/README.md): `self-help/README.md`
- [Atomic Habits](https://github.com/presmihaylov/booknotes/blob/master/self-help/atomic-habits/README.md): `self-help/atomic-habits/README.md`

### Other components

- **Reader**
- [Category Index](https://github.com/presmihaylov/booknotes/blob/master/README.md): `README.md`

## Connections

- Reader → Category Index: browses
- Category Index → Architecture Index: lists
- Category Index → Java Index: lists
- Category Index → System Design Index: lists
- Category Index → General Index: lists
- Category Index → Self-Help Index: lists
- Reader → Architecture Index: opens
- Reader → Java Index: opens
- Reader → System Design Index: opens
- Reader → General Index: opens
- Reader → Self-Help Index: opens
