01
Make the first impression useful
Clear positioning, strong content hierarchy, and interfaces that make the next step obvious.
Independent developer / websites, CMS and AI
Building modern web experiences with a focus on performance, accessibility, and beautiful design.
I build the public bits people see, plus the boring systems that keep them working after launch.
Field note
No. 001
Current focus
Fast sites, simple CMS setups, AI that helps.
A practical stack
The stuff I use for websites, content, and the parts behind the scenes.
What I can help with
A new website, a CMS that is getting messy, or an AI feature that needs to be useful. The point is fewer weird problems later.
How I work →01
Clear positioning, strong content hierarchy, and interfaces that make the next step obvious.
02
A maintainable system for the months after launch: content, performance, and the team using it.
03
Practical workflows and product features with review, guardrails, and a reason to exist.
Field notes
Thoughts, tutorials, and insights about web development and technology.

Audit App Router authorization that relies on middleware or proxy, then upgrade Next.js to the patched release that includes the Turbopack follow-up.

Choose static builds, Cloudflare edge caching, and signed webhook invalidation so Sanity edits stay fresh without slow page-by-page CMS requests.

Why cached Cloudflare Worker responses have immutable headers in Astro middleware, and the safe Response-cloning pattern that prevents the production error.
A useful next step
Looking for a web developer to help bring your project to life? I'm always open to discussing new opportunities and collaborations.