YouTube launch series

Your first custom CRM in 2 afternoons (exact steps)

This CRM took me two afternoons. It runs my whole roofing business now.

📹 Video shipping soon

Drafted + scripted. Recording in queue. Subscribe to the Founder Plan to be notified the moment it lands.

What you'll walk away with

A scene-by-scene walkthrough of every beat in the video. Plain English. Real numbers. Real workflow.

The walkthrough

  1. This CRM took me two afternoons. It runs my whole roofing business now.
  2. HubSpot wanted $400 a month. JobNimbus, Salesforce, Zoho — same story.
  3. I needed eight specific things. None of them justified $400 a month.
  4. Here's the stack. Free. Local. Mine.
  5. Don't write code first. Write the plan first.
  6. Open Claude Code. Hit Plan Mode. Don't skip this.
  7. This was my exact prompt. Plain English. No jargon.
  8. Claude wrote a plan. Files, tables, routes. I read it line by line.
  9. I changed three things. Added photo storage. Killed an over-engineered queue.
  10. Approve the plan. Now Claude knows what we're actually building.
  11. Claude writes the schema. Customers. Jobs. Estimates. Photos.
  12. One file on disk. crm.db. That's the whole database.
  13. Seed it with five fake customers so you can test as you go.
  14. Five rows back. Database works.
  15. Two files. One Python. One database. We're 30 minutes in.
  16. Now the routes. FastAPI. Claude writes them. You watch.
  17. GET customers. POST customer. Same pattern repeats for every table.
  18. FastAPI gives you free docs. Click around. Make sure routes work.
  19. Hit a route from the terminal. Real data comes back.
  20. Claude catches the missing edge cases. Empty queries. Bad IDs. 404s.
  21. Every route works. Backend done. ~2 hours total so far.
  22. Frontend. No React. No build step. Plain HTML and a fetch.
  23. Customer list works. Click a customer. See their jobs.
  24. Add a customer form. Six fields. POST it back.
  25. Estimates page. Add line items. Total at the bottom.
  26. Drop a photo. It saves to disk. Linked to the job.
  27. Second afternoon. Add the bot that watches your spending.
  28. Pulls last 30 days of jobs and expenses. Sends to a local LLM.
  29. Bot reads it back to me. Plain English. No charts. No fluff.
  30. Runs every Sunday morning. I just read the email.
  31. Final stack. One folder. ~600 lines of code total.
  32. $400/month → $0/month. Same outputs. Better fit.
  33. Two afternoons. Real customers on it the next morning.
  34. Your experience is the moat. Cataloged in your folder. Read by your bot.
  35. localmodeldojo.com — Founder pricing $24/mo for life · code LAUNCH30 · 30 days only

Cut your AI bill 90%+

I built Local Model Dojo so the same kind of bot work that costs $100/mo on the Claude or OpenAI API runs on hardware you already own. Founder pricing locks in for the life of your account.

See Founder pricing → Code LAUNCH30 · 30-day window

← Why local LLMs beat API bills — the one-afternoon setup The one mental model for how AI bots talk to each other →

— Jake Morris · Oklahoma veteran · localmodeldojo.com