The product site at radd-hq.com: one static page, served from the cluster as a Caddy image
  • HTML 60.3%
  • CSS 19.8%
  • JavaScript 17.5%
  • Dockerfile 2.4%
Find a file
Repository files (latest commit first)
Filename Latest commit message Latest commit date
2026-09-14 08:11:21 +03:00
assets [RADD-1164] The comparison table is out until it is rethought 2026-09-14 08:11:21 +03:00
.containerignore [RADD-1164] The site as a Caddy image; contribution copy says what no-CLA means under AGPL 2026-09-13 22:14:19 +03:00
.gitignore The product site for radd-hq.com: pledge, tour, features, SLQ playground, workflows, sourced comparison, install, about 2026-09-13 22:02:02 +03:00
Caddyfile.site [RADD-1164] The site as a Caddy image; contribution copy says what no-CLA means under AGPL 2026-09-13 22:14:19 +03:00
Containerfile [RADD-1164] Strip Caddy's file capability so the image runs under no_new_privs 2026-09-13 22:17:01 +03:00
index.html [RADD-1164] The comparison table is out until it is rethought 2026-09-14 08:11:21 +03:00
README.md [RADD-1164] The comparison table is out until it is rethought 2026-09-14 08:11:21 +03:00
robots.txt The product site for radd-hq.com: pledge, tour, features, SLQ playground, workflows, sourced comparison, install, about 2026-09-13 22:02:02 +03:00
sitemap.xml The product site for radd-hq.com: pledge, tour, features, SLQ playground, workflows, sourced comparison, install, about 2026-09-13 22:02:02 +03:00

radd-hq.com

The product website for Radd: one static page, no build step, no framework.

  • index.html — the page (hero, pledge, tour, features, SLQ playground, workflows, install, about, contribute)
  • assets/site.css, assets/site.js — styles and the small amount of JS (theme toggle, tabs, copy buttons, the browser-side SLQ subset)
  • assets/media/ — screenshots copied from the app repo's docs/media/; refresh them when the app's README screenshots change
  • assets/brand/ — icon and favicons copied from web/public/brand/

Preview locally

python3 -m http.server 8080

Ship a change

The site runs in the radd-hq.com cluster as a Caddy image (Containerfile + Caddyfile.site), routed to the apex by site.yaml in the private deployment repo. Shipping is: build, push, bump the tag.

podman build -t git.radd-hq.com/radd/site:0.2.0 -f Containerfile .
podman run --rm -p 8080:8080 git.radd-hq.com/radd/site:0.2.0     # look at it once
podman login git.radd-hq.com                                       # the Forgejo owner token
podman push git.radd-hq.com/radd/site:0.2.0

Then in the deployment repo edit image: in site.yaml to the new version, commit, push. CD applies it with a zero-downtime rollout. Rolling back is editing the tag back.

The package is public on git.radd-hq.com, which is what lets the cluster pull it with no credential. Versions are immutable and there is no latest tag, so the tag in site.yaml is the only statement of what is live.