Skip to main content

Colophon

How this site is built, who helped, and what powers it.

Technical Stack

Framework
Astro 5.x with TypeScript strict mode
Styling
Tailwind CSS 3 with CSS custom properties for theming
Interactive Components
Preact islands (AudioPlayer, MindMap, Quiz, Flashcards, DataTable)
Content
Markdown + MDX with Astro Content Collections (Zod schemas)
Hosting
GitHub Pages via GitHub Actions
Analytics
GA4 consent-gated, with build-time data fetch for public dashboard
Search
Pagefind — static search index built at deploy time
Rich Media
NotebookLM Studio (audio overviews, reports, quizzes, mind maps)

Design Philosophy

  • Dark-first with botanical earth-tone palette, dusty copper accent
  • System font stack — zero font downloads
  • Minimal JavaScript — interactive islands only where needed
  • No tracking before consent
  • Semantic HTML + progressive enhancement
  • Content-first — code serves the writing

Build Information

Last Built
2026-02-15
Build Process
Static site generation (SSG) with CI/CD via GitHub Actions
Content Pipeline
Automated via GitHub Actions + NotebookLM API integration

Credits

Built by Adrian Wedd with assistance from Claude Code (Opus 4.6).

NotebookLM automation toolkit: github.com/adrianwedd/notebooklm

Production NotebookLM research pipeline: github.com/adrianwedd/failure-first-embodied-ai

Typography

System font stack. No font downloads, native rendering.

system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif

Performance Budget

  • Zero custom fonts
  • Analytics: ~30KB gzipped (consent-gated)
  • Interactive islands: lazy hydration via client:idle
  • Images: lazy loading with native loading="lazy"

License

Content (blog posts, project descriptions, writing) is © 2026 Adrian Wedd unless otherwise noted. Code is available under MIT license.

Questions about this site's architecture or content pipeline? See NotebookLM Pipeline docs or open an issue.