History
reid.wiki has been through eras: a Jekyll/Minimal Mistakes site deliberately over-engineered onto ECS behind an ALB (great CloudFront/Docker/ECS practice, overkill for HTML), and now this — the third rebuild, which swings the other way: aggressively simple hosting with the engineering effort moved into the content pipeline instead.
Current architecture
- Astro static build — content lives in markdown collections with typed frontmatter (projects carry status, category, timeline, and stack as data, which is what renders the status indicators across the site).
- S3 + CloudFront — static hosting, wildcard ACM cert, cache-control tuned so hashed assets are immutable and HTML revalidates in about a minute. No servers, no containers, effectively free.
- GitHub Actions — push to branch → build → sync to S3.
- Sveltia CMS at
/admin/— a browser editing panel over the git repo. Editing a project status or posting a note is a form + save button; the CMS commits to GitHub behind the scenes and CI redeploys. Updates without touching a terminal, while everything stays version-controlled markdown.
Why not a database and an admin backend?
Because then I’d own auth, backups, and uptime for a personal site. Git is the database; the CMS is just a nicer pen. If the panel ever breaks, the fallback is editing markdown — which is also the disaster recovery plan, the local dev story, and the migration path, all at once.