Documentation site for Watchflare — a self-hosted host monitoring solution.
Live site: docs.watchflare.io
Guides, reference pages, and architecture concepts covering:
- Deploying the Hub with Docker Compose
- Enrolling agents on Linux and macOS
- Configuring alerts and notification channels
- Two-factor authentication, systemd services, and package inventory
- PKI, TLS 1.3, and HMAC-SHA256 security model
- Configuration reference for all environment variables
Site chrome (navigation, search, home) is available in English and French. All guides are translated. The changelog intro is French; release notes stay in English.
| Tool | Role |
|---|---|
| Astro 6 | Static site generator |
| MDX | Markdown with component support |
| MiniSearch | Client-side full-text search |
| Native CSS | No framework, design tokens only |
Requires Node >= 22.12.0 and pnpm.
pnpm install
pnpm dev # http://localhost:4321
pnpm check # astro check (types + content)
pnpm build # Production build → ./dist/
pnpm preview # Preview production buildSearch (⌘K) works in pnpm dev: indexes are generated as /search-index-en.json and /search-index-fr.json routes.
Hosted on Cloudflare Pages. .github/workflows/deploy.yml triggers the Cloudflare deploy hook on a watchflare-release dispatch from the app repo, or via manual workflow_dispatch.
See CONTRIBUTING.md. Content lives in src/content/docs/. Each MDX file maps directly to a URL:
src/content/docs/en/hub/configuration.mdx → /hub/configuration/
src/content/docs/fr/hub/configuration.mdx → /fr/hub/configuration/
Without a French MDX file, /fr/... serves the English page with a fallback notice.
MIT — documentation and site source code only. The Watchflare application itself is licensed under AGPL-3.0.
The version field in package.json is this documentation site, not Watchflare Hub or Agent.