# sagarchry0777/dsa-handbook architecture

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

- Interactive diagram: https://gitdiagram.com/sagarchry0777/dsa-handbook
- Repository: https://github.com/sagarchry0777/dsa-handbook

## Overview

DSA Handbook is a problem-first interview-preparation handbook published as a static site. A learner follows a roadmap and practice method, studies pattern-specific recognition cues and problem ladders, then uses worked solutions and reference material to consolidate learning. The browser adds search, navigation, theme controls, and interactive algorithm visualizations. The README documents the content and site capabilities; sampled source confirms the browser behavior and simulation player, but not all page-level wiring.

Main entry points: [`docs`](https://github.com/sagarchry0777/dsa-handbook/tree/main/docs) (Handbook site), [`site/app.js`](https://github.com/sagarchry0777/dsa-handbook/blob/main/site/app.js) (Page interactions), [`site/sims.js`](https://github.com/sagarchry0777/dsa-handbook/blob/main/site/sims.js) (Simulation player), [`content/roadmap.md`](https://github.com/sagarchry0777/dsa-handbook/blob/main/content/roadmap.md) (Roadmaps)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_curriculum["Learning curriculum"]
  node_roadmap["Roadmaps<br/>[roadmap.md]"]
  node_practice["Practice method<br/>[how-to-practise.md]"]
  node_patterns["Pattern pages"]
  node_solutions["Worked solutions"]
  node_video_notes["Video notes"]
end

subgraph group_reference["Reference material"]
  node_reference_pages["Complexity reference<br/>[complexity.md]"]
  node_problem_index["Problem index<br/>[problem-index.md]"]
  node_company_questions["Company questions"]
  node_codeforces["Codeforces guide<br/>[codeforces.md]"]
end

subgraph group_site["Reader experience"]
  node_published["Handbook site"]
  node_browser_app["Page interactions<br/>[app.js]"]
  node_search_index["Search index<br/>[search-index.json]"]
end

subgraph group_visuals["Interactive visuals"]
  node_sim_player["Simulation player<br/>[sims.js]"]
  node_sim_definitions["Algorithm simulations<br/>[simdefs.js]"]
end

node_learner(("Learner"))

node_learner -->|"reads"| node_published
node_published -->|"presents"| node_roadmap
node_published -->|"presents"| node_practice
node_published -->|"presents"| node_patterns
node_published -->|"presents"| node_solutions
node_published -->|"presents"| node_video_notes
node_published -->|"presents"| node_reference_pages
node_published -->|"presents"| node_problem_index
node_published -->|"presents"| node_company_questions
node_published -->|"presents"| node_codeforces
node_published -->|"loads"| node_browser_app
node_browser_app -->|"loads"| node_search_index
node_published -->|"loads"| node_sim_player
node_sim_player -->|"renders"| node_sim_definitions

click node_published "https://github.com/sagarchry0777/dsa-handbook/tree/main/docs"
click node_roadmap "https://github.com/sagarchry0777/dsa-handbook/blob/main/content/roadmap.md"
click node_practice "https://github.com/sagarchry0777/dsa-handbook/blob/main/content/how-to-practise.md"
click node_patterns "https://github.com/sagarchry0777/dsa-handbook/tree/main/content"
click node_solutions "https://github.com/sagarchry0777/dsa-handbook/tree/main/content"
click node_video_notes "https://github.com/sagarchry0777/dsa-handbook/tree/main/content"
click node_reference_pages "https://github.com/sagarchry0777/dsa-handbook/blob/main/content/complexity.md"
click node_problem_index "https://github.com/sagarchry0777/dsa-handbook/blob/main/content/problem-index.md"
click node_company_questions "https://github.com/sagarchry0777/dsa-handbook/blob/main/content/company-questions.md"
click node_codeforces "https://github.com/sagarchry0777/dsa-handbook/blob/main/content/codeforces.md"
click node_browser_app "https://github.com/sagarchry0777/dsa-handbook/blob/main/site/app.js"
click node_search_index "https://github.com/sagarchry0777/dsa-handbook/blob/main/docs/search-index.json"
click node_sim_player "https://github.com/sagarchry0777/dsa-handbook/blob/main/site/sims.js"
click node_sim_definitions "https://github.com/sagarchry0777/dsa-handbook/blob/main/site/simdefs.js"

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_roadmap,node_practice,node_patterns,node_solutions,node_video_notes toneBlue
class node_reference_pages,node_problem_index,node_company_questions,node_codeforces toneAmber
class node_published,node_browser_app,node_search_index toneMint
class node_sim_player,node_sim_definitions toneRose
class node_learner toneIndigo
```

## Components

### Learning curriculum

- [Roadmaps](https://github.com/sagarchry0777/dsa-handbook/blob/main/content/roadmap.md): `content/roadmap.md`
- [Practice method](https://github.com/sagarchry0777/dsa-handbook/blob/main/content/how-to-practise.md): `content/how-to-practise.md`
- [Pattern pages](https://github.com/sagarchry0777/dsa-handbook/tree/main/content): `content`
- [Worked solutions](https://github.com/sagarchry0777/dsa-handbook/tree/main/content): `content`
- [Video notes](https://github.com/sagarchry0777/dsa-handbook/tree/main/content): `content`

### Reference material

- [Complexity reference](https://github.com/sagarchry0777/dsa-handbook/blob/main/content/complexity.md): `content/complexity.md`
- [Problem index](https://github.com/sagarchry0777/dsa-handbook/blob/main/content/problem-index.md): `content/problem-index.md`
- [Company questions](https://github.com/sagarchry0777/dsa-handbook/blob/main/content/company-questions.md): `content/company-questions.md`
- [Codeforces guide](https://github.com/sagarchry0777/dsa-handbook/blob/main/content/codeforces.md): `content/codeforces.md`

### Reader experience

- [Handbook site](https://github.com/sagarchry0777/dsa-handbook/tree/main/docs): `docs`
- [Page interactions](https://github.com/sagarchry0777/dsa-handbook/blob/main/site/app.js): `site/app.js`
- [Search index](https://github.com/sagarchry0777/dsa-handbook/blob/main/docs/search-index.json): `docs/search-index.json`

### Interactive visuals

- [Simulation player](https://github.com/sagarchry0777/dsa-handbook/blob/main/site/sims.js): `site/sims.js`
- [Algorithm simulations](https://github.com/sagarchry0777/dsa-handbook/blob/main/site/simdefs.js): `site/simdefs.js`

### Other components

- **Learner**

## Connections

- Learner → Handbook site: reads
- Handbook site → Roadmaps: presents
- Handbook site → Practice method: presents
- Handbook site → Pattern pages: presents
- Handbook site → Worked solutions: presents
- Handbook site → Video notes: presents
- Handbook site → Complexity reference: presents
- Handbook site → Problem index: presents
- Handbook site → Company questions: presents
- Handbook site → Codeforces guide: presents
- Handbook site → Page interactions: loads
- Page interactions → Search index: loads
- Handbook site → Simulation player: loads
- Simulation player → Algorithm simulations: renders
