The official project website for Fluxheim — a high-performance edge server and reverse proxy built in Rust.
A fully static, multi-page project website — no build step, no Node.js, no framework. All JavaScript and CSS assets are vendored locally so the site works offline and can be served by any static file server, including Fluxheim itself.
The site is self-hosting: the included container/Dockerfile builds Fluxheim v1.5.5 from source and serves this website from inside a hardened Wolfi container.
| Page | Path | Description |
|---|---|---|
| Landing | index.html |
Hero, feature grid, quick-start tabs, architecture overview |
| Download | download.html |
Release cards, install instructions, all-releases table |
| Changelog | changelog.html |
Timeline-style release history |
| Docs — Hub | docs/index.html |
Documentation landing with section cards |
| Docs — Installation | docs/getting-started.html |
Tarball, container, and source install guides |
| Docs — Config Reference | docs/configuration.html |
Full TOML configuration reference |
| Docs — Feature Matrix | docs/features.html |
Cargo features and build profile table |
| Docs — TLS & ACME | docs/tls-acme.html |
TLS backends, managed ACME, EAB issuers |
| Docs — Cache System | docs/cache.html |
Memory/disk/tiered cache, range caching, admin API |
| Docs — Deployment | docs/deployment.html |
Systemd, containers, Podman Quadlet |
| Docs — Observability | docs/observability.html |
Prometheus, OpenTelemetry, structured logging |
| Docs — Advanced | docs/advanced.html |
PHP-FPM, fluxheim-acme, config-tester, WAF, WASM |
| Docs — Source Reference | docs/reference.html |
Vendored upstream Fluxheim Markdown docs from main |
All assets are vendored locally — no runtime CDN calls.
| Library | Version | Purpose |
|---|---|---|
| Vendored Tailwind browser build | v3 | Utility-first styling, responsive dark and light themes |
| Alpine.js | v3.14.1 | Mobile drawer, tabs, sidebar active state |
| Prism.js | v1.29.0 | Syntax highlighting (TOML, Bash, Rust) |
Design: #030712 (gray-950) dark background · #22d3ee (cyan-400) accent · violet secondary
No build step — open any HTML file directly in a browser, or serve with any static file server:
# Python (built-in)
python3 -m http.server 8000
# Or with Fluxheim itself (see Docker section below)container/Dockerfile uses a three-stage build. It builds Fluxheim from the tagged upstream release and packages the website files from the local build context, so local container tests exercise the same files you are about to push:
- Builder —
rust:1.96-slim-bookworm: clones and compiles Fluxheim v1.5.5 withprofile-static-site - Site —
alpine:3: packages the local HTML, docs, assets, and config - Runtime —
cgr.dev/chainguard/wolfi-base: hardened Wolfi image, non-root user, binary + site files baked in
podman-compose -f container/podman-compose.yml up --buildThe site will be available at http://localhost:8080.
# Build — context is repo root, Dockerfile is in container/
podman build -f container/Dockerfile -t fluxheim-website:1.5.5 .
# Run rootless on port 8080
podman run -d \
--name fluxheim-website \
--restart unless-stopped \
-p 8080:8080 \
fluxheim-website:1.5.5podman run -d \
--name fluxheim-website \
-p 8080:8080 \
-v ./conf/fluxheim.toml:/etc/fluxheim/fluxheim.toml:ro,z \
fluxheim-website:1.5.5fluxheim-website/
├── index.html # Landing page
├── download.html # Downloads & install guide
├── changelog.html # Release history
├── docs/
│ ├── index.html # Docs hub
│ ├── getting-started.html
│ ├── configuration.html
│ ├── features.html
│ ├── tls-acme.html
│ ├── cache.html
│ ├── deployment.html
│ ├── observability.html
│ ├── advanced.html
│ ├── reference.html
│ └── source/ # Vendored Markdown plus rendered source-doc HTML
├── assets/
│ ├── css/
│ │ ├── prism-dark.min.css
│ │ └── theme.css
│ ├── js/
│ │ ├── tailwind.js
│ │ ├── theme.js
│ │ ├── alpine.min.js
│ │ ├── prism.min.js
│ │ ├── prism-bash.min.js
│ │ ├── prism-toml.min.js
│ │ └── prism-rust.min.js
│ └── img/
│ ├── fluxheim-logo.webp
│ └── fluxheim-overview.webp
├── conf/
│ └── fluxheim.toml # Fluxheim vhost config for serving this site
├── container/
│ ├── Dockerfile # Multi-stage: Rust/Debian builder → Wolfi runtime
│ └── podman-compose.yml
├── tools/
│ └── render-source-docs.py
├── .dockerignore
└── .containerignore
conf/fluxheim.toml configures Fluxheim to serve this site on port 8080 under the fluxheim.eu virtual host:
[server]
listen = ["0.0.0.0:8080"]
default_vhost = "site"
[[vhosts]]
name = "site"
hosts = ["fluxheim.eu"]
[vhosts.web]
root = "/srv/sites/fluxheim"
index_files = ["index.html"]
deny_dotfiles = true- Edit the HTML files directly — no compilation needed.
- Keep all assets local (download and vendor any new JS/CSS into
assets/). - Test by opening the page in a browser or running a local server.
- The site targets the current stable Fluxheim release — update version strings in all pages when a new release ships.
This website is part of the Fluxheim project and is licensed under the EUPL-1.2.