Colophon

Foundation

This site is a personal digital garden built with Next.js 16 (App Router) and TypeScript. Content lives in Sanity and is pulled in at build-time with GROQ queries. The code is kept in a GitHub repository and deployed to Netlify.

Content model

The garden is organized into a few main content types in Sanity:

All rich text is stored as Portable Text and rendered on the site with custom components that preserve paragraphs and basic formatting.

Design & layout

The layout is intentionally minimal: a narrow column, plenty of spacing, and almost no traditional navigation. Most of the styling is done with Tailwind CSS, using a dark background with muted grays for body text and slightly brighter accents for links and labels.

Typography pairs a monospaced feel for headings with a more readable sans-serif for long-form text. The goal is to feel like a developer notebook and a personal journal at the same time.

Navigation is deliberately constrained: aside from the home page, each page exposes a single Back button that lets you move backward through your path instead of jumping around via a global header. It's meant to feel more like walking a path than using an app.

Editing & tooling

Content is edited in Sanity Studio, running as a separate local instance during writing sessions. The Next.js app pulls from the same project ID and dataset and uses ISR (incremental static regeneration) to keep pages reasonably fresh without giving up on static builds.

Deploys are triggered automatically from pushes to the main branch. Netlify handles builds, environment variables, and serving the production bundle.

Philosophy

This garden is designed to change over time. Some notes will stay half-formed, some weeks will be thin, some letters will be heavy. That's intentional. The goal isn't to maintain a polished archive, but to leave a visible trail of thinking, reading, and living across years.