Skip to content

quenchworks/website

QuenchWorks website

The marketing site and live catalog for QuenchWorks, a free, 0-CVE hardened catalog of container images and signed Helm charts. It's the front door at quench-works.com, and the browsable index of every image and chart we ship.

QuenchWorks in a terminal: run a 0-CVE image, verify it with cosign, deploy the Helm chart, and watch the pod reach Running.

Built with Astro 5 · Tailwind CSS v4 · TypeScript, managed with pnpm, on Node 26 (see .nvmrc). Monochrome by design (ink/paper), Inter + JetBrains Mono. The theme is enforced through design tokens, not hardcoded hex.

Develop

pnpm install
pnpm dev        # http://localhost:4321  (runs the catalog sync first)
pnpm check      # astro + TypeScript checks
pnpm build      # static output to dist/  (runs the catalog sync first)
pnpm preview    # preview the production build

pnpm dev and pnpm build both run the catalog sync automatically (predev / prebuild), so the /images and /charts pages always reflect the real catalog.

How the catalog data is generated

scripts/sync-catalog.mjs is the bridge between the catalog repos and the site. It reads the source of truth out of quenchworks/images (catalog.yaml) and quenchworks/charts, then writes src/data/images.json and src/data/charts.json. The catalog pages render from those files, so counts, versions, digests, and license flags are never hand-maintained.

pnpm sync       # node scripts/sync-catalog.mjs

Structure

src/
  data/                 images.json + charts.json (generated by sync-catalog.mjs)
  pages/
    index.astro         the hero / landing page
    images/             the hardened-image catalog
    charts/             the signed-chart catalog
    docs/               how-to-verify and reference docs
    roadmap.astro       what's shipped and what's next
    security.astro      the security model and verification steps
    about.astro · how-it-works.astro
  layouts/ · components/ · styles/
scripts/sync-catalog.mjs   pulls catalog data from the images + charts repos
public/                    brand assets, favicon

Theme

Color and type come from the design tokens in src/styles/global.css (@theme). Don't hardcode hex in components; use the ink / graphite / line / ash / paper utilities so the whole site stays consistent. Monochrome only, no color accent.

Deploy

Static build (pnpm builddist/), deployed to Cloudflare Pages via the Git integration (Cloudflare builds on push, no GitHub Actions workflow needed):

  • Build command: pnpm build
  • Build output directory: dist
  • Framework preset: Astro
  • Node version: 26 (set NODE_VERSION=26 in the Pages env, matching .nvmrc)
  • Custom domain: quench-works.com

About

QuenchWorks marketing site (Astro + Tailwind): the catalog of hardened, 0-CVE Helm charts and container images.

Topics

Resources

Code of conduct

Contributing

Security policy

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors