This Portfolio Site
Active
A static portfolio built with Eleventy — no framework, no client-side rendering, deployed automatically from a push to main.
Last updated: August 11, 2026 · Built with: Eleventy, Liquid, Pico.css, Formspree, GitHub Actions, GitHub Pages
View source Live demoOverview
The site you're reading. I wanted somewhere to keep track of what I'm building that wasn't a README nobody visits, and I wanted it to be genuinely static — every page plain HTML by the time it reaches a browser, no framework, no hydration, no client-side rendering.
Features
- Content-driven — a project is a Markdown file in
projects/. The index page and the homepage's featured list both build themselves from front matter, so there is no list to maintain by hand - Status tracking — each project carries a
statusand aprogresspercentage, rendered as a badge and a bar, so the projects page reads as a current snapshot rather than an archive - Music and photography sections — sheet music scores and audio alongside the code work
- Working contact form — Formspree handles submissions with no backend, plus a honeypot field that bots fill in and people don't
- SEO and social — canonical URLs, Open Graph and Twitter card metadata, an RSS feed,
sitemap.xmlandrobots.txt, all generated - Accessible by default — skip link, semantic landmarks, and
prefers-reduced-motionrespected - Continuous deploy — GitHub Actions rebuilds and redeploys on every push to
main
Progress
August 2026. All pages live. Project write-ups rebuilt around the status/progress system. Deploy pipeline green.
Next.
- Social preview image (
/images/social-preview.pngis referenced but not yet drawn) - Screenshots on each project page
- Tag/filter on the projects index once there are enough projects to need it
What I learned
Pico.css was the right call for a site whose job is to be read. Classless CSS means the Markdown stays Markdown and the layout files stay short. Choosing a design system that requires almost no markup was worth more than any amount of styling I'd have done myself.