This site is where I write about technology, media, and digital products — and occasionally document independent projects and experiments. It serves as both a professional notebook and a publishing outlet, with a deliberate focus on tools, engineering decisions, and the systems that shape how digital experiences are built.

What follows is a transparent account of how this site is made, what powers it, and which tools are part of its day-to-day operation.

An Informative Pipeline

Content does not write itself — but the tooling around it matters. The pipeline below reflects how information flows from raw input to published output, with each tool serving a specific role rather than overlapping ones.

flowchart LR Obsidian --> Claude Search["Google Search"] --> Claude Claude --> Code["VS Code\n+ Claude Code"] Gemini["Google Gemini"] --> Code Figma --> Code Jupyter["Jupyter Notebooks"] --> Code Code --> Astro Astro --> Cloudflare Cloudflare --> LinkedIn
ToolRole
ObsidianPersonal knowledge warehouse. Captures notes, web sources, and AI chat excerpts. The starting point for most articles and ideas.
ClaudeResearch partner, editorial assistant, and content editor. Used to check sources alongside Google Search, and to refine and fix published texts.
Google SearchPrimary source verification and fact-checking layer, paired with Claude for research tasks.
Google GeminiImage generation via the Gemini Nano Banana model. Produces illustrations and visuals for posts.
FigmaDesign environment for UI concepts and visual exploration. Used to prototype interface ideas before translating them into code.
Jupyter NotebooksData exploration and analysis environment, run through Visual Studio Code. Used to query, crunch, and visualise datasets when the work calls for it.
Claude CodeAI-powered code assistant. Handles both code editing and content tasks directly within the development environment.
Visual Studio CodePrimary code and content editor. Used in tandem with Claude Code for all site development and writing.
LinkedInSocial media syndication channel. Published articles are distributed here to reach a broader audience.
ChromeDefault browser for development and research. Used across the full workflow — from local previews to source exploration.

Stack

The site is built for simplicity, performance, and low operational overhead. The choices reflect a preference for tools that get out of the way and let the content speak.

  • Astro — A modern static site generator optimised for content-driven sites. Astro’s island architecture means JavaScript is shipped only where strictly necessary, keeping pages fast and lean. Markdown content, component-based layouts, and file-based routing make it a natural fit for a personal publishing workflow.
  • Cloudflare — Serverless hosting and global edge delivery. Pages and Workers handle deployment and any dynamic functionality without the overhead of managing infrastructure. Combined with Astro’s static output, this results in near-zero cold starts and globally consistent performance.