headplane/app/server
2025-03-24 16:15:38 -04:00
..
config feat: reach an initial working stage 2025-03-24 16:15:38 -04:00
headscale chore: migrate patching to HeadscaleConfig 2025-03-24 16:15:38 -04:00
web feat: reach an initial working stage 2025-03-24 16:15:38 -04:00
index.ts feat: reach an initial working stage 2025-03-24 16:15:38 -04:00
README.md feat: reach an initial working stage 2025-03-24 16:15:38 -04:00

Headplane Server

This code is responsible for all code that is necessary before any web server is started. It is the only part of the code that contains many side-effects (in this case, importing a module may run code).

Hierarchy

server
├── index.ts: Loads everything and starts the web server.
├── config/
│   ├── env.ts: Checks the environment variables for custom overrides.
│   ├── loader.ts: Checks the configuration file and coalesces with ENV.
│   ├── schema.ts: Defines the schema for the Headplane configuration.
├── headscale/
│   ├── api-client.ts: Creates the HTTP client that talks to the Headscale API.
│   ├── config-loader.ts: Loads the Headscale configuration (if available).
│   ├── config-schema.ts: Defines the schema for the Headscale configuration.
├── web/
│   ├── oidc.ts: Loads and validates an OIDC configuration (if available).
│   ├── sessions.ts: Initializes the session store and methods to manage it.