# th7mo/th7mo.com architecture

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

## Overview

th7mo.com is a statically generated, content-driven website for browsing notes and other pages. Its main workflow is note content entering Astro’s notes collection and becoming overview and per-note pages; the README documents generation for every collection item. The tree also shows separate secret-note, homepage, and meta-page routes. Shared layouts, navigation, and terminal-style list components support the site. Source excerpts do not show page-to-layout wiring, so those connections are omitted rather than inferred.

Main entry points: [`src/content.config.ts`](https://github.com/th7mo/th7mo.com/blob/main/src/content.config.ts) (Notes collection), [`src/components/NoteIndex.svelte`](https://github.com/th7mo/th7mo.com/blob/main/src/components/NoteIndex.svelte) (Note index renderer), [`src/pages/notes.astro`](https://github.com/th7mo/th7mo.com/blob/main/src/pages/notes.astro) (Notes overview), [`src/pages/notes/[...slug].astro`](https://github.com/th7mo/th7mo.com/blob/main/src/pages/notes/%5B...slug%5D.astro) (Note page)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_routes["Site routes"]
  node_home["Homepage<br/>[index.astro]"]
  node_notes_index["Notes overview<br/>[notes.astro]"]
  node_note_page["Note page<br/>[&#91;...slug&#93;.astro]"]
  node_secret_index["Secret notes overview<br/>[secret-notes.astro]"]
  node_secret_page["Secret note page<br/>[&#91;...slug&#93;.astro]"]
  node_meta_pages["Meta pages<br/>[meta.astro]"]
  node_meta_detail["Meta articles<br/>[design-choices.md]"]
  node_not_found["Not found<br/>[404.md]"]
end

subgraph group_content["Notes content"]
  node_notes_collection[("Notes collection<br/>[content.config.ts]")]
end

subgraph group_presentation["Shared presentation"]
  node_note_index["Note index renderer<br/>[NoteIndex.svelte]"]
  node_terminal_list["Terminal list"]
  node_terminal_item["Terminal list item"]
  node_breadcrumbs["Breadcrumb navigation"]
  node_breadcrumb_item["Breadcrumb item"]
  node_layout["Site layout<br/>[Layout.astro]"]
  node_markdown_layout["Markdown layout"]
  node_overview_layout["Notes overview layout"]
  node_head["Page metadata<br/>[Head.svelte]"]
  node_footer["Creation footer<br/>[Footer.svelte]"]
end

subgraph group_styles["Site styling"]
  node_styles["CSS styles<br/>[base.css]"]
end

node_visitor(("Site visitor"))
node_content_repo["Notes submodule"]

node_visitor -->|"visits"| node_home
node_visitor -->|"visits"| node_notes_index
node_visitor -->|"visits"| node_note_page
node_visitor -->|"visits"| node_secret_index
node_visitor -->|"visits"| node_secret_page
node_visitor -->|"visits"| node_meta_pages
node_content_repo -->|"provides notes"| node_notes_collection
node_notes_collection -->|"generates pages"| node_note_page
node_notes_collection -->|"generates pages"| node_notes_index
node_note_index -->|"renders"| node_terminal_list
node_note_index -->|"renders"| node_terminal_item
node_breadcrumbs -->|"renders"| node_breadcrumb_item

click node_home "https://github.com/th7mo/th7mo.com/blob/main/src/pages/index.astro"
click node_notes_index "https://github.com/th7mo/th7mo.com/blob/main/src/pages/notes.astro"
click node_note_page "https://github.com/th7mo/th7mo.com/blob/main/src/pages/notes/%5B...slug%5D.astro"
click node_secret_index "https://github.com/th7mo/th7mo.com/blob/main/src/pages/secret-notes.astro"
click node_secret_page "https://github.com/th7mo/th7mo.com/blob/main/src/pages/secret-notes/%5B...slug%5D.astro"
click node_meta_pages "https://github.com/th7mo/th7mo.com/blob/main/src/pages/meta.astro"
click node_meta_detail "https://github.com/th7mo/th7mo.com/blob/main/src/pages/meta/design-choices.md"
click node_not_found "https://github.com/th7mo/th7mo.com/blob/main/src/pages/404.md"
click node_notes_collection "https://github.com/th7mo/th7mo.com/blob/main/src/content.config.ts"
click node_note_index "https://github.com/th7mo/th7mo.com/blob/main/src/components/NoteIndex.svelte"
click node_terminal_list "https://github.com/th7mo/th7mo.com/blob/main/src/components/TerminalList.svelte"
click node_terminal_item "https://github.com/th7mo/th7mo.com/blob/main/src/components/TerminalListItem.svelte"
click node_breadcrumbs "https://github.com/th7mo/th7mo.com/blob/main/src/components/BreadcrumbNavigation.svelte"
click node_breadcrumb_item "https://github.com/th7mo/th7mo.com/blob/main/src/components/BreadcrumbNavigationItem.svelte"
click node_layout "https://github.com/th7mo/th7mo.com/blob/main/src/layouts/Layout.astro"
click node_markdown_layout "https://github.com/th7mo/th7mo.com/blob/main/src/layouts/MarkdownLayout.astro"
click node_overview_layout "https://github.com/th7mo/th7mo.com/blob/main/src/layouts/NotesOverviewLayout.astro"
click node_head "https://github.com/th7mo/th7mo.com/blob/main/src/components/Head.svelte"
click node_footer "https://github.com/th7mo/th7mo.com/blob/main/src/components/Footer.svelte"
click node_styles "https://github.com/th7mo/th7mo.com/blob/main/src/styles/base.css"

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_home,node_notes_index,node_note_page,node_secret_index,node_secret_page,node_meta_pages,node_meta_detail,node_not_found toneBlue
class node_notes_collection toneAmber
class node_note_index,node_terminal_list,node_terminal_item,node_breadcrumbs,node_breadcrumb_item,node_layout,node_markdown_layout,node_overview_layout,node_head,node_footer toneMint
class node_styles toneRose
class node_visitor,node_content_repo toneIndigo
```

## Components

### Site routes

- [Homepage](https://github.com/th7mo/th7mo.com/blob/main/src/pages/index.astro): `src/pages/index.astro`
- [Notes overview](https://github.com/th7mo/th7mo.com/blob/main/src/pages/notes.astro): `src/pages/notes.astro`
- [Note page](https://github.com/th7mo/th7mo.com/blob/main/src/pages/notes/%5B...slug%5D.astro): `src/pages/notes/[...slug].astro`
- [Secret notes overview](https://github.com/th7mo/th7mo.com/blob/main/src/pages/secret-notes.astro): `src/pages/secret-notes.astro`
- [Secret note page](https://github.com/th7mo/th7mo.com/blob/main/src/pages/secret-notes/%5B...slug%5D.astro): `src/pages/secret-notes/[...slug].astro`
- [Meta pages](https://github.com/th7mo/th7mo.com/blob/main/src/pages/meta.astro): `src/pages/meta.astro`
- [Meta articles](https://github.com/th7mo/th7mo.com/blob/main/src/pages/meta/design-choices.md): `src/pages/meta/design-choices.md`
- [Not found](https://github.com/th7mo/th7mo.com/blob/main/src/pages/404.md): `src/pages/404.md`

### Notes content

- [Notes collection](https://github.com/th7mo/th7mo.com/blob/main/src/content.config.ts): `src/content.config.ts`

### Shared presentation

- [Note index renderer](https://github.com/th7mo/th7mo.com/blob/main/src/components/NoteIndex.svelte): `src/components/NoteIndex.svelte`
- [Terminal list](https://github.com/th7mo/th7mo.com/blob/main/src/components/TerminalList.svelte): `src/components/TerminalList.svelte`
- [Terminal list item](https://github.com/th7mo/th7mo.com/blob/main/src/components/TerminalListItem.svelte): `src/components/TerminalListItem.svelte`
- [Breadcrumb navigation](https://github.com/th7mo/th7mo.com/blob/main/src/components/BreadcrumbNavigation.svelte): `src/components/BreadcrumbNavigation.svelte`
- [Breadcrumb item](https://github.com/th7mo/th7mo.com/blob/main/src/components/BreadcrumbNavigationItem.svelte): `src/components/BreadcrumbNavigationItem.svelte`
- [Site layout](https://github.com/th7mo/th7mo.com/blob/main/src/layouts/Layout.astro): `src/layouts/Layout.astro`
- [Markdown layout](https://github.com/th7mo/th7mo.com/blob/main/src/layouts/MarkdownLayout.astro): `src/layouts/MarkdownLayout.astro`
- [Notes overview layout](https://github.com/th7mo/th7mo.com/blob/main/src/layouts/NotesOverviewLayout.astro): `src/layouts/NotesOverviewLayout.astro`
- [Page metadata](https://github.com/th7mo/th7mo.com/blob/main/src/components/Head.svelte): `src/components/Head.svelte`
- [Creation footer](https://github.com/th7mo/th7mo.com/blob/main/src/components/Footer.svelte): `src/components/Footer.svelte`

### Site styling

- [CSS styles](https://github.com/th7mo/th7mo.com/blob/main/src/styles/base.css): `src/styles/base.css`

### Other components

- **Site visitor**
- **Notes submodule**

## Connections

- Site visitor → Homepage: visits (evidence: `readme.md`)
- Site visitor → Notes overview: visits (evidence: `readme.md`)
- Site visitor → Note page: visits (evidence: `readme.md`)
- Site visitor → Secret notes overview: visits (evidence: `readme.md`)
- Site visitor → Secret note page: visits (evidence: `readme.md`)
- Site visitor → Meta pages: visits (evidence: `readme.md`)
- Notes submodule → Notes collection: provides notes (evidence: `readme.md`)
- Notes collection → Note page: generates pages (evidence: `readme.md`)
- Notes collection → Notes overview: generates pages (evidence: `readme.md`)
- Note index renderer → Terminal list: renders (evidence: `src/components/NoteIndex.svelte`)
- Note index renderer → Terminal list item: renders (evidence: `src/components/NoteIndex.svelte`)
- Breadcrumb navigation → Breadcrumb item: renders (evidence: `src/components/BreadcrumbNavigation.svelte`)
