Colophon
How this site was built
jpnr.me is one more product on the Products page — it just happens to be the one you're standing on. This page treats it that way: the same AI use label every product gets, and a plain account of what's shipped so far and how.
27
17 Sep 2026
200+
2
The stack
Astro, built to static HTML, styled with Tailwind v4. Content — products, posts, the Now page, all of it — lives in Sanity and gets pulled in at build time. The handful of things a static file can't do (the AI assistant, the AI governance quick check, rate limits, a couple of admin tools) run in one Cloudflare Worker alongside the static assets.
Pushing to main on GitHub triggers a Cloudflare build automatically; a Sanity webhook triggers the same build when content changes in Studio, so editing a post doesn't need a code push at all.
What's shipped since launch
The site launched in mid-September 2026 as a straightforward portfolio — Home, Products, Blog, About. Since then: the AI use label on every product, a flip-card revealing the first message behind each one, a streamgraph of 189 days of building, a footer line on whether it's currently a good time to expect a commit out of Hyderabad, blog posts readable in three lengths, turning a line of text into a shareable image, a public AI governance quick-check tool, and a short guided tour depending on why you showed up. Each one was picked from a shortlist and checked against a real build before going live.
Who writes the code
JP designs and directs this site — what to build, the calls only a person can make, and whether a change is actually good before it ships. Claude Code writes the code and content from that direction, and gets sent back to fix it when it's wrong. The same relationship runs across every product on this site, which is why this page can reuse their label below instead of inventing a different story for itself.
AI use · 14 sessions
AI use
jpnr.me · Personal Site & Portfolio
Declared by JP · sessions from Shape build history