# adsblol/website architecture

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

- Interactive diagram: https://gitdiagram.com/adsblol/website
- Repository: https://github.com/adsblol/website

## Overview

This is the adsb.lol public website: a Hugo-powered information and documentation site, rather than an ADS-B data-processing service. Its user workflow is to browse the overview, follow setup guidance, and consult open-data or feeder-specific documentation. The tree also shows blog content and frontend search and presentation features. The README only identifies the site and its Hugo/Doks basis; source excerpts do not establish detailed template-to-script calls or external service integrations, so those links are omitted.

Main entry points: [`layouts`](https://github.com/adsblol/website/tree/main/layouts) (Page layouts), [`content/en/docs/overview`](https://github.com/adsblol/website/tree/main/content/en/docs/overview) (Overview), [`content/en/docs/get-started`](https://github.com/adsblol/website/tree/main/content/en/docs/get-started) (Getting started), [`content/en/docs/hardware`](https://github.com/adsblol/website/tree/main/content/en/docs/hardware) (Hardware guidance)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_content["Site content"]
  node_overview["Overview"]
  node_gettingstarted["Getting started"]
  node_hardware["Hardware guidance"]
  node_opendata["Open data"]
  node_feeders["Feeder guidance"]
  node_blog["Blog"]
end

subgraph group_presentation["Page presentation"]
  node_pageviews["Page layouts"]
  node_partials["Shared partials"]
end

subgraph group_interaction["Browser features"]
  node_searchindex["Search index<br/>[index.js]"]
  node_searchui["Search interface<br/>[index.js]"]
  node_browserjs["Browser enhancements"]
end

subgraph group_styles["Visual system"]
  node_styles["Site styles"]
end

node_visitor(("Website visitor"))
node_website["adsb.lol website"]

node_visitor -->|"browses"| node_website
node_overview -->|"page content"| node_pageviews
node_gettingstarted -->|"page content"| node_pageviews
node_hardware -->|"page content"| node_pageviews
node_opendata -->|"page content"| node_pageviews
node_feeders -->|"page content"| node_pageviews
node_blog -->|"page content"| node_pageviews
node_pageviews -->|"uses"| node_partials
node_searchindex -->|"search data"| node_searchui
node_browserjs -->|"enhances"| node_website
node_styles -->|"styles"| node_website
node_website -->|"serves pages"| node_visitor

click node_overview "https://github.com/adsblol/website/tree/main/content/en/docs/overview"
click node_gettingstarted "https://github.com/adsblol/website/tree/main/content/en/docs/get-started"
click node_hardware "https://github.com/adsblol/website/tree/main/content/en/docs/hardware"
click node_opendata "https://github.com/adsblol/website/tree/main/content/en/docs/open-data"
click node_feeders "https://github.com/adsblol/website/tree/main/content/en/docs/feeders-only"
click node_blog "https://github.com/adsblol/website/tree/main/content/en/blog"
click node_pageviews "https://github.com/adsblol/website/tree/main/layouts"
click node_partials "https://github.com/adsblol/website/tree/main/layouts/partials"
click node_searchindex "https://github.com/adsblol/website/blob/main/layouts/_default/index.js"
click node_searchui "https://github.com/adsblol/website/blob/main/assets/js/index.js"
click node_browserjs "https://github.com/adsblol/website/tree/main/assets/js"
click node_styles "https://github.com/adsblol/website/tree/main/assets/scss"

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_overview,node_gettingstarted,node_hardware,node_opendata,node_feeders,node_blog toneBlue
class node_pageviews,node_partials toneAmber
class node_searchindex,node_searchui,node_browserjs toneMint
class node_styles toneRose
class node_visitor,node_website toneIndigo
```

## Components

### Site content

- [Overview](https://github.com/adsblol/website/tree/main/content/en/docs/overview): `content/en/docs/overview`
- [Getting started](https://github.com/adsblol/website/tree/main/content/en/docs/get-started): `content/en/docs/get-started`
- [Hardware guidance](https://github.com/adsblol/website/tree/main/content/en/docs/hardware): `content/en/docs/hardware`
- [Open data](https://github.com/adsblol/website/tree/main/content/en/docs/open-data): `content/en/docs/open-data`
- [Feeder guidance](https://github.com/adsblol/website/tree/main/content/en/docs/feeders-only): `content/en/docs/feeders-only`
- [Blog](https://github.com/adsblol/website/tree/main/content/en/blog): `content/en/blog`

### Page presentation

- [Page layouts](https://github.com/adsblol/website/tree/main/layouts): `layouts`
- [Shared partials](https://github.com/adsblol/website/tree/main/layouts/partials): `layouts/partials`

### Browser features

- [Search index](https://github.com/adsblol/website/blob/main/layouts/_default/index.js): `layouts/_default/index.js`
- [Search interface](https://github.com/adsblol/website/blob/main/assets/js/index.js): `assets/js/index.js`
- [Browser enhancements](https://github.com/adsblol/website/tree/main/assets/js): `assets/js`

### Visual system

- [Site styles](https://github.com/adsblol/website/tree/main/assets/scss): `assets/scss`

### Other components

- **Website visitor**
- **adsb.lol website**

## Connections

- Website visitor → adsb.lol website: browses
- Overview → Page layouts: page content
- Getting started → Page layouts: page content
- Hardware guidance → Page layouts: page content
- Open data → Page layouts: page content
- Feeder guidance → Page layouts: page content
- Blog → Page layouts: page content
- Page layouts → Shared partials: uses
- Search index → Search interface: search data
- Browser enhancements → adsb.lol website: enhances
- Site styles → adsb.lol website: styles
- adsb.lol website → Website visitor: serves pages
