Platform Phases
WeekendBuilder is built in phases, each one adding a distinct capability to the platform.
Phase 1 — Foundation
Server provisioning, Docker installation, firewall rules, SSH hardening, and repository structure. The VPS is ready to run containers but has no public-facing services yet.
Phase 2 — DNS
Domain registration via Porkbun with DNS delegated to Cloudflare. Wildcard A/AAAA records point all subdomains at the VPS IP. The wildcard means new apps work without touching DNS again.
Phase 3 — Routing
Traefik v3 deployed as the reverse proxy gateway. Handles automatic HTTPS via Let’s Encrypt (HTTP challenge), HTTP→HTTPS redirects, secure headers, and gzip compression. All apps route through Traefik by attaching to the web Docker network.
Phase 4 — Traefik Polish
Middleware configuration: secure-headers (HSTS, X-Frame-Options, XSS filter) and gzip defined in infrastructure/traefik/dynamic/middlewares.yml. Applied to all routers.
Phase 5 — Landing Page
The apex domain (weekendbuilder.io) becomes a public landing page served by nginx. Lists platform projects and links to subdomains. No build step — plain HTML served directly from a bind mount.
Phase 6 — Docs Site
docs.weekendbuilder.io deployed as a static Astro Starlight site. Built with Node 22 Alpine, served by nginx:alpine, routed through Traefik like every other app.
Next: Phase 7 — CI/CD
GitHub Actions for automated deploys on push to main. Not yet implemented.