Notes from the build
Blog
Notes on building websites and products: development, design, SEO and launching.
13 posts
A Ramen Brand Built Around One Cat, from Logo to Live Website
A black cat with a slightly blank stare became a whole ramen brand, then a trilingual website where it eats noodles on a loop. Logo, brand visuals, Claude Design, Claude Code, Higgsfield and Railway.

I Built an E-commerce Website with Claude, from Design to Launch
A Tibetan incense brand, start to finish with AI. The logo and packaging, a Payload store, PayPal checkout, and the unglamorous parts that turn a storefront into a shop.

I Rebuilt My Website with AI in a Week
Standing on clouds, falling through the sky, floating on balloons, and a window into my workspace. How the new site came together, and the ideas that didn't make it.

How Much Does It Cost to Build an MVP? A Practical Breakdown
What actually drives the cost of a minimum viable product, how to estimate it in hours before you talk to anyone, and where founders overspend.

How to Write a Website Brief (With a Free Template)
A website brief that gets accurate, comparable quotes in one round. What to include, what to leave out, and a copy-paste template.

Next.js Static Export (output: 'export'): The Complete Guide
How Next.js static export works in the App Router, what it can't do, and the workarounds for images, dynamic routes, forms and redirects.

Technical SEO for the Next.js App Router: A Practical Checklist
Metadata, canonical URLs, sitemaps, robots.txt, structured data, hreflang and Core Web Vitals in the Next.js App Router, with code you can copy.

Build a Markdown Blog in Next.js Without a CMS or Database
A blog where every post is a Markdown file in your Git repo. Front matter, syntax highlighting, images, video and static pages with the Next.js App Router.

A Serverless Contact Form with Cloudflare Workers and D1
Give a static website a working contact form with a Cloudflare Worker, a D1 database, Turnstile spam protection and instant notifications. Free tier, full code.

Core Web Vitals for Animated Websites: Pass LCP, INP and CLS
How to keep scroll animations, WebGL and video on a website and still pass Core Web Vitals. The specific causes of slow LCP, INP and CLS, and the fixes.
