
How I Turned a Single-File Outreach Tool Into a Team CRM
How a single-file outreach MVP evolved into a multi-user CRM with Supabase row-level security, Cloudflare Workers email flows, and a shared team playbook.
Thoughts on AI, engineering, and building better software.

How a single-file outreach MVP evolved into a multi-user CRM with Supabase row-level security, Cloudflare Workers email flows, and a shared team playbook.

Instead of forcing our hiring process into spreadsheets or off-the-shelf tools, I built a custom dashboard for Tally forms in about an hour with AI, Cloudflare Workers, and D1.

How I built a resumable video upload pipeline for mobile apps using Cloudflare Stream and Supabase — with a full cost breakdown, webhook gotchas, and what to upgrade next.

After a WordPress to Astro migration, I audited 600 blog posts to find thin content, decide what to noindex, merge, or expand, and improve overall site quality.

A practical Replit to production checklist covering secrets, cold starts, database pooling, file storage, logging, and launch fixes before real users hit your app.

What is vibe code cleanup? A founder-friendly guide to AI app cleanup, audit costs, rebuild vs. refactor decisions, and what to ask before hiring a developer.

How to build programmatic SEO pages that rank - the framework I use for SaaS and content businesses: keyword research, data sourcing, AI generation, and QA.

How I use tmux, tmuxp, fzf, and direnv to build a persistent embedded development workflow. One command boots everything — serial consoles, dev servers, and project environments — with no rebuilding or lost state.

Built your app with Lovable, Bolt, or Replit? Here are the 5 signs it's not production-ready - and what to do about each one before real users hit it.

Claude Code's /insights report showed where to optimize. What it showed (single-goal vs multi-task, friction points), what it recommended (hooks, task agents), and what I'm doing. Takeaways: CLAUDE.md, skills, run your own report.