# chayanon-ninyawee/recruitment_hackathon_2627 architecture

> Architecture diagram of the GitHub repository chayanon-ninyawee/recruitment_hackathon_2627, 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/chayanon-ninyawee/recruitment_hackathon_2627
- Repository: https://github.com/chayanon-ninyawee/recruitment_hackathon_2627

## Overview

This branch is the hackathon’s documentation front door, not the racing software. Its main workflow takes README and chapter Markdown from the two track branches, renders a shared static site, and publishes that site for readers. The generator also builds the landing page and applies platform-aware rendering; browser JavaScript handles reader interactions. The README documents the broader build and publishing behavior, while the sampled excerpts show only parts of the generator and client script. Link checking and build infrastructure are omitted.

Main entry points: [`docs-site/build.py`](https://github.com/chayanon-ninyawee/recruitment_hackathon_2627/blob/main/docs-site/build.py) (Static-site generator), [`docs-site/theme/docs.css`](https://github.com/chayanon-ninyawee/recruitment_hackathon_2627/blob/main/docs-site/theme/docs.css) (Site styles), [`docs-site/site.json`](https://github.com/chayanon-ninyawee/recruitment_hackathon_2627/blob/main/docs-site/site.json) (Landing-page config), [`docs-site/templates`](https://github.com/chayanon-ninyawee/recruitment_hackathon_2627/tree/main/docs-site/templates) (Page templates)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_content["Documentation content"]
  node_track_docs["Track Markdown"]
  node_landing_copy["Landing-page config<br/>[site.json]"]
end

subgraph group_render["Site generation"]
  node_generator["Static-site generator<br/>[build.py]"]
  node_templates["Page templates"]
  node_site_assets["Static assets"]
  node_theme_css["Site styles<br/>[docs.css]"]
  node_design_tokens["Design tokens<br/>[tokens.css]"]
  node_pages["Rendered track pages"]
  node_landing["Track landing page"]
end

subgraph group_reader["Reader experience"]
  node_browser_ui["Interactive controls<br/>[app.js]"]
  node_static_site["Published site"]
end

node_reader(("Hackathon reader"))
node_github_pages["GitHub Pages"]

node_track_docs -->|"provides Markdown"| node_generator
node_landing_copy -->|"configures landing"| node_generator
node_generator -->|"renders chapters"| node_pages
node_generator -->|"renders landing"| node_landing
node_templates -->|"supplies shells"| node_generator
node_site_assets -->|"copies assets"| node_generator
node_generator -->|"assembles output"| node_static_site
node_theme_css -->|"styles pages"| node_static_site
node_design_tokens -->|"defines properties"| node_theme_css
node_browser_ui -->|"enhances pages"| node_static_site
node_static_site -->|"published on"| node_github_pages
node_reader -->|"reads site"| node_static_site

click node_landing_copy "https://github.com/chayanon-ninyawee/recruitment_hackathon_2627/blob/main/docs-site/site.json"
click node_generator "https://github.com/chayanon-ninyawee/recruitment_hackathon_2627/blob/main/docs-site/build.py"
click node_templates "https://github.com/chayanon-ninyawee/recruitment_hackathon_2627/tree/main/docs-site/templates"
click node_site_assets "https://github.com/chayanon-ninyawee/recruitment_hackathon_2627/tree/main/docs-site/static"
click node_theme_css "https://github.com/chayanon-ninyawee/recruitment_hackathon_2627/blob/main/docs-site/theme/docs.css"
click node_design_tokens "https://github.com/chayanon-ninyawee/recruitment_hackathon_2627/blob/main/docs-site/theme/tokens.css"
click node_browser_ui "https://github.com/chayanon-ninyawee/recruitment_hackathon_2627/blob/main/docs-site/theme/app.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_track_docs,node_landing_copy toneBlue
class node_generator,node_templates,node_site_assets,node_theme_css,node_design_tokens,node_pages,node_landing toneAmber
class node_browser_ui,node_static_site toneMint
class node_reader,node_github_pages toneIndigo
```

## Components

### Documentation content

- **Track Markdown**
- [Landing-page config](https://github.com/chayanon-ninyawee/recruitment_hackathon_2627/blob/main/docs-site/site.json): `docs-site/site.json`

### Site generation

- [Static-site generator](https://github.com/chayanon-ninyawee/recruitment_hackathon_2627/blob/main/docs-site/build.py): `docs-site/build.py`
- [Page templates](https://github.com/chayanon-ninyawee/recruitment_hackathon_2627/tree/main/docs-site/templates): `docs-site/templates`
- [Static assets](https://github.com/chayanon-ninyawee/recruitment_hackathon_2627/tree/main/docs-site/static): `docs-site/static`
- [Site styles](https://github.com/chayanon-ninyawee/recruitment_hackathon_2627/blob/main/docs-site/theme/docs.css): `docs-site/theme/docs.css`
- [Design tokens](https://github.com/chayanon-ninyawee/recruitment_hackathon_2627/blob/main/docs-site/theme/tokens.css): `docs-site/theme/tokens.css`
- **Rendered track pages**
- **Track landing page**

### Reader experience

- [Interactive controls](https://github.com/chayanon-ninyawee/recruitment_hackathon_2627/blob/main/docs-site/theme/app.js): `docs-site/theme/app.js`
- **Published site**

### Other components

- **Hackathon reader**
- **GitHub Pages**

## Connections

- Track Markdown → Static-site generator: provides Markdown (evidence: `README.md`)
- Landing-page config → Static-site generator: configures landing (evidence: `README.md`)
- Static-site generator → Rendered track pages: renders chapters (evidence: `README.md`)
- Static-site generator → Track landing page: renders landing (evidence: `README.md`)
- Page templates → Static-site generator: supplies shells (evidence: `README.md`)
- Static assets → Static-site generator: copies assets (evidence: `README.md`)
- Static-site generator → Published site: assembles output (evidence: `README.md`)
- Site styles → Published site: styles pages (evidence: `README.md`)
- Design tokens → Site styles: defines properties (evidence: `README.md`)
- Interactive controls → Published site: enhances pages (evidence: `docs-site/theme/app.js`)
- Published site → GitHub Pages: published on (evidence: `README.md`)
- Hackathon reader → Published site: reads site (evidence: `README.md`)
