The first time I tried to describe coachboard to someone, I made the mistake of calling it a CRM. They pictured HubSpot. They pictured pipelines with 14 stages and a deal-velocity dashboard nobody looks at. That's not what this is.
coachboard is what you get if you ask: "What does a solo coach actually need, and nothing more?" The answer turns out to be clients, sessions, goals, action items, invoices, and a calendar. Six things. Not 600. Not a marketing automation tower with email drips and UTM attribution. Six things done well.
The Problem It Solves
Every solo coach I've talked to — life coaches, exec coaches, fractional CTOs, therapists who don't take insurance, writing coaches — runs their practice out of three tools that don't talk to each other. A calendar for the schedule. A Notion doc or a Google Drive for client notes. QuickBooks or Wave for invoices. The human brain for "what did we commit to last session."
That setup works for four clients. It breaks at twelve. By twenty, the coach is spending Sunday evenings copy-pasting between tools and silently wondering if they're still doing what they love. I've watched three friends burn out of their practices for this exact reason. The work wasn't the problem. The infrastructure was.
What's In It
Six surfaces, one SQLite file. Here's the tour:
- Client profiles. One page per client: background, current goals, session history, standing action items. You click into a client before a session and see everything in ten seconds. No fishing through Gmail.
- Session notes with carry-forward. This is the feature I'm proudest of. When you finish a session, you log what you worked on + what they're committing to next. Next session auto-loads those action items at the top. You can stop asking "wait, what did we talk about last time?"
- Per-client goals. Quarter or milestone scope. Status markers (green/yellow/red). Stalled goals surface on a separate page so you can have the conversation when it needs having.
- Invoicing. Hourly, retainer, or package. Generate a PDF. Mark paid. Per-client P&L so you can see which relationships are actually profitable. (Spoiler: the ones that are easiest to coach usually aren't the ones paying the highest rate.)
- Calendar integration. Book the next session inline, iCal subscribe, Google Calendar export. Reminders 24h before. No Calendly round-trip.
- Session mode. A full-screen view designed for during the session: the client's goals, their open action items, space to type notes, a timer. Nothing else on the screen. Designed for staying present.
The Build
Flask + SQLite + Jinja. About 1,400 lines of custom code on top of our template. Session notes store as Markdown. PDFs are generated with WeasyPrint. Calendar integration uses iCal files (subscribe URL) instead of OAuth-based Google Calendar for simplicity. Single-password auth — this is a solo app; you don't need roles and permissions for one person.
# Clone and run locally
git clone https://github.com/Dangercorn-Enterprises/coachboard.git
cd coachboard
pip install -r requirements.txt
echo "AUTH_PASSWORD=pickyourown" >> .env
python app.py
# → http://localhost:8444
Port 8444 is deterministic — every install uses the same port because we hash the slug. (Why deterministic ports? Separate post.) That's what lets you run coachboard alongside 30 other Dangercorn apps on the same dev box without collisions.
Pricing
- Self-host: $0 forever. Full features. GitHub repo is public.
- Hosted Pro: $29/mo. Managed, unlimited clients, PDF invoice branding, Stripe + Square payment links, session reminders.
- Practice Plus: $99/mo. Multi-coach, client-facing portal, automated intake, Zoom/Meet integration.
Hosted tiers are in early access. Email tim@dangercorn.net to get on the waitlist. The self-host tier is the same codebase — you're not giving anything up by running it yourself. (Why the self-host tier is the center of the strategy: this post.)
Who It's Actually For
The target coach has 10-40 active clients. They bill $150-400/hr. They've been coaching for long enough to know what they need but not long enough to have built a dysfunctional Zapier graph they can't escape. They value privacy (some of these conversations are genuinely sensitive) and they don't want a vendor having the transcript.
If that's you: self-host it, kick the tires for a week, email me what's missing. I'd rather have five coaches actively using it and telling me what's wrong than fifty who signed up and forgot.
The point of coachboard isn't to make you a more productive coach. The point is to make the software invisible so the coaching part stays front and center.
What's Next
The top feature request so far is inbound lead capture — a public intake form that creates a draft client with a consultation goal. That's on the roadmap for Practice Plus. Also planned: voice-memo transcription for post-session notes (via our shared Claude wrapper), shared goal templates you can reuse across clients, and a "quarterly review" export that makes it easy to send a client their own progress summary.
This is the first vertical I actually use myself — I've started logging my fractional-CTO consulting clients in it. Nothing sharpens a product like having to eat your own cooking.