Commit Graph

3 Commits

Author SHA1 Message Date
Founding Engineer
2500705bba feat: add SPA for 2026-03-09 — From Rapper to PM: Nepal's Gen Z Revolution
Interactive single-page election story featuring:
- Hero with animated seat counter (0→117)
- Interactive SVG map of Nepal's 7 provinces with hover tooltips
- Scroll-triggered revolution timeline (Sep 2025 → Mar 2026)
- Generational divide section with animated donut chart
- Balen Shah's viral song 'Nepal Haseko' with YouTube embed
- Strategy breakdown infographic (RSP vs old guard)
- Canvas-based share card generator

Deploy to: spaoftheday.com/2026/03/09/
2026-03-09 13:05:11 +11:00
Release Manager
77f2c5b6bd fix: update to ts0.org zone, R2 custom domain, live infra state
- Zone stack now uses ts0.org (token has DNS:Edit there, not dodwell.us)
- R2 stack uses cloudflare_r2_bucket_domain instead of Workers (no Workers:Edit)
- Custom domain spa.ts0.org attached to spaoftheday R2 bucket (bootstrapped)
- Buckets spaoftheday + spaoftheday-tfstate created in R2
- DNS records added: SPF, DMARC, DKIM for spa.ts0.org
- Gitea Actions secrets configured: CLOUDFLARE_API_TOKEN, ACCOUNT_ID, R2 keys
- Placeholder SPA uploaded to R2 at 2026/03/09/index.html
- CLAUDE.md updated to reflect spa.ts0.org and current live state
2026-03-09 12:19:40 +11:00
Release Manager
133af0540a feat: initial Terramate + GitHub Actions setup for spaoftheday
- Add Terramate root config with two stacks:
  - stacks/cloudflare/zone: DNS records for spa.dodwell.us (CNAME, SPF, DMARC, DKIM)
  - stacks/cloudflare/r2: R2 bucket + Cloudflare Worker for static SPA routing
- Add GitHub Actions workflows:
  - pr-review.yml: lint/fmt/validate + plan on PRs
  - deploy.yml: apply infra + upload changed SPAs to R2 on merge to master
- Add scripts/generate_index.py: regenerates site homepage from R2 contents
- Add scripts/deploy_spa.sh: manual single-SPA deploy helper
- Add SPA folder structure: spas/YYYY/MM/DD/index.html
- Add CLAUDE.md: full developer guide for adding and deploying SPAs
- Add placeholder SPA for 2026-03-09
2026-03-09 02:11:49 +11:00