Blog
Notes on building, shipping, and monetizing MVPs with AI coding agents.
-
The S3 + CloudFront + ACM + Route 53 deploy pattern
Four AWS services. Each does one thing. Together they serve a static site at any scale you'll realistically hit, for $0.50 a month. Here's the full recipe.
-
From idea to deployed: a real 30-minute MVP build log
I sat down with no project, no domain, no infrastructure. Thirty minutes later there was a live URL with auth, a deployed AI feature, and a privacy policy. Here's the actual log.
-
The AdSense integration that actually works
AdSense docs make it sound complicated. The actual integration is one script tag, one ads.txt file, and approval. Here's the full pattern with the gotchas explained.
-
Domain transfer vs nameserver delegation: which path to AWS
Two ways to get your GoDaddy domain managed by Route 53. One is permanent and changes who you pay. The other is reversible and changes nothing about ownership. Here's how to choose.
-
Running typed OpenAI calls at $0.0001 each with Zod
Free-form text outputs from LLMs are a refactoring trap. Pin the output to a Zod schema and the AI feature becomes the same shape as any other typed function in your codebase.
-
Suggesting AI features unique enough for VC
Investors want to see an AI angle nobody else is doing. Here's the research process the skills run to identify one — and why it's a fundraising tailwind worth chasing.
-
The 10-question data audit before you ship
Most MVPs ship with one or two data flow inefficiencies that turn into showstoppers at 100 users. Here's the 10-minute audit that catches them.
-
You probably don't need WebSockets yet
WebSockets feel like the right answer because real-time UX is impressive. For an MVP, polling at 5 seconds is almost always fine and an order of magnitude simpler to ship.
-
Header vs footer: the surface that does the work
Modern design separates the working surface from the reference surface. The header is for doing. The footer is for learning. Most MVPs get this backward.
-
The privacy policy you can write yourself
Generic privacy policy templates miss most of what your product actually does. The good news: writing a tailored one for an MVP takes 30 minutes. Here's the structure.
-
Playwright for visual end-to-end review
Snapshot tests with no human review let broken layouts ship. Here's the pattern that combines automated browser drives with the agent literally looking at the screenshots.
-
Admin dashboards in 50 lines of code
You don't need a CMS. You don't need Retool. You need a private URL with the four numbers that tell you whether the product is working.
-
OpenAI's free content moderation API for community apps
If your app lets users post anything other users see, you need content moderation. OpenAI's moderation endpoint is free, fast, and the easiest button to push. Here's how.
-
The minimum compliance an MVP needs (and what you can defer)
Compliance is a floor, not a ceiling. Here's the smallest legal surface that actually covers a beta launch — without spending $20,000 on a lawyer before you have your first user.
-
WCAG 2.2 AA in an afternoon
Accessibility sounds like weeks of work. For an MVP, it's about four hours. Here's the actual checklist that gets you to AA compliance and avoids the lawsuit.
-
The Stripe Checkout pattern that skips PCI compliance
If you're building your own card form, you've signed up for PCI-DSS compliance. Stripe Checkout puts that burden on Stripe. Here's how to wire it in 20 minutes.
-
Auth.js + Resend: the 30-minute magic link auth setup
Magic link auth removes passwords without rolling your own crypto. The Auth.js + Resend pattern is the cleanest path to a real signup flow that won't embarrass you on launch day.
-
SES + Lambda: a personal email forwarder that costs nothing
Want a hello@yourdomain.com that forwards to your Gmail? Most providers charge $5–10/month. Here's the AWS pattern that costs zero and takes 30 minutes.
-
Ship without a domain: the founder's $0 launch
Buying a domain feels like the first step. It's not. It's a step you can defer for weeks without anyone noticing. Here's why founders should ship at *.vercel.app and what to do instead of agonizing over names.
-
Stop asking your AI agent to be careful — give it a checklist
Every founder I know has tried 'be careful' as a prompt. It doesn't work. The agent isn't ignoring you; it doesn't have a definition of careful. Here's what does work.
-
What gpt-5-nano is actually good at (and what it isn't)
Nano is the workhorse for MVP-grade AI features. It's also the model people most often misuse. Here's what to use it for, what to avoid it for, and the cost math that makes it the right default.
-
The 17-skill checklist that ships an MVP
Most MVPs don't fail because the code is bad. They fail because the founder doesn't know what 'done' looks like. Here's the checklist that defines done.
-
The cheapest static site hosting in 2026: $0.50/month on AWS
Most people host their static site on Vercel or Netlify, hit the limits, and start paying $20+/month. The S3 + CloudFront + Route 53 pattern costs about $0.50 forever. Here's the full setup.
-
Claude Code vs Codex: an honest comparison after 30 hours of building
I built the same things in both agents over the last three weeks. They're closer than most comparisons admit, and the differences that matter aren't the ones the marketing pages emphasize.
-
Why we built the Vibe Coder's Guide to MVP
There are millions of people with product ideas and an AI agent on their laptop. Most never ship. Here's what's actually missing — and why we built a stack of skills to fix it.