Year One Retrospective — An Honest Look at What We Built

One year in. 220 apps shipped. Some customers, not enough yet. The honest founder assessment of what worked, what didn't, the numbers, and where we're going.

Read more

When to Kill a Vertical — Pruning Discipline for a Factory

A 220-vertical catalog needs pruning discipline. Not every app should live forever. Here are the criteria we use to kill a vertical and the six we've already archived.

Read more

The Niche Is the Moat — Why Cheesemakers Don't Get Salesforce

The Dangercorn moat isn't technology or capital. It's narrow market specificity. Cheesemakers, beekeepers, tattoo shops aren't getting Salesforce. That's the whole moat.

Read more

How TikTok Could Save the Factory — The Promo-Stack Thesis

Cold email scales linearly with cost. Paid ads scale linearly with cost. Short-form video scales with catalog size — the one dimension where a factory has structural advantage.

Read more

The Johnny-5 Outreach Retrospective — What SiteLens Actually Taught Us

A year-in retro on SiteLens cold outreach. 375 emails, 4 human replies, 9.2% bounce. What the data actually taught us about cold email, AI personalization, and the channel pivot.

Read more

The Factory Problem with Customer Support — How to Support 220 Apps

Two founders, 220 apps. The math obviously doesn't work if support scales linearly. Here's the triage system, the response-time tiers, and the rules that keep it sustainable.

Read more

The Hosted vs Self-Host Economics — Unit Math Walkthrough

Self-host is $0. Hosted is $29-99. Same code. Here's the unit math that makes the model work, what gross margins actually look like, and where it breaks.

Read more

CI on 100 Repos — Matrix Build, 3 Python Versions, Lessons Learned

Running GitHub Actions CI across 130+ Dangercorn repos with a 3-Python-version matrix. How we keep it fast, what we cache, and what breaks at portfolio scale.

Read more

Why Every Landing Page Is 13KB of HTML

Every Dangercorn vertical landing page is under 13KB of HTML. Static-first, generator-rendered, no JS framework. What that buys us, and what we give up.

Read more

OpenClaw — The Agent Fleet: 9 Nodes, Heterogeneous, Autonomous

A tour of the current OpenClaw fleet: 9 physical nodes, distinct personalities, gateway mesh, where it breaks. The full architecture and the honest failure modes.

Read more

When Single-Password Session Auth Is the Correct Answer

Most Dangercorn apps use single-password session auth. For single-user, single-tenant tools this is the right answer, not the lazy answer. Here's the threat model.

Read more

Stripe for the Self-Host Tier — Optional Billing Without Requiring It

How we wire Stripe into every Dangercorn app to enable optional billing for self-host users without forcing them to configure payment. Code patterns, tradeoffs, what breaks.

Read more

dcch Deep Dive: Retry, Backoff, JSON Mode, Model Downshift

A deep dive on dangercorn-claude-helper. Retry policy, exponential backoff with jitter, JSON validation against Pydantic, model fallback chain, cost tracking, template fallback.

Read more

The 220 Database Schemas — Patterns, Anti-Patterns, and What We Learned

Patterns observed across 220 real vertical-SaaS database schemas. Where audit columns belong, when JSON is a feature vs a cop-out, and how foreign keys actually behave in practice.

Read more

Flask + SQLite Is Right for 90% of Vertical SaaS

Why we run 220 small vertical SaaS apps on Flask + SQLite instead of FastAPI + Postgres. The boring stack is the correct stack for most micro-SaaS, with real numbers.

Read more

Product Spotlight: breweryops — Software That Matches a 10-bbl Brewhouse

Brewery software is either Ekos enterprise or a buddy's Excel sheet. breweryops is the middle: a real ops stack for a 3-30 bbl brewery that doesn't cost an Ekos license.

Read more

Product Spotlight: boxops — CrossFit Box Ops Without the Wodify Tax

Wodify charges per-athlete. For a 60-athlete box, that's real money every month. boxops is what I built for a box owner who said 'I shouldn't pay my software more than my coach.'

Read more

Product Spotlight: retentionradar — Churn Radar for Solo SaaS Founders

ChurnZero is $15K/year. Gainsight is higher. For an indie SaaS at 200 customers, neither is the answer. retentionradar is the tool for solo founders watching MRR drift sideways.

Read more

Product Spotlight: codesnips — The Self-Hosted Gist That Doesn't Phone Home

I've written the same awk one-liner 11 times because I couldn't find the last one. codesnips is the personal Gist alternative: self-hosted, fast, keyboard-driven, no cloud.

Read more

Product Spotlight: agentdesk — A Real Estate CRM That Isn't Top Producer

Real estate agents pay $60-120/month for CRMs they use 5% of. agentdesk is what happens when you build the 5% solo agents actually use, plus per-anniversary reminders.

Read more

Product Spotlight: cateringpro — Event Ops for Chefs Who'd Rather Cook

A catering chef I've known for 15 years runs 25 events a month out of three Google sheets and a Trello board. cateringpro is the app she asked for when sheet #3 had the wrong date.

Read more

Product Spotlight: musicschool — For Teachers Who Teach Kids, Not Databases

Every private music teacher I know uses Google Calendar, a paper notebook, and a PayPal invoice template from 2019. musicschool is what happens when you take the notebook seriously.

Read more

Product Spotlight: dentaldesk — Practice Management Without the Enterprise Price

Dentrix and Eaglesoft cost what a staff salary does. Open Dental is free but learning-curve-heavy. dentaldesk is the in-between for the 1-3 dentist practice.

Read more

Product Spotlight: churchadmin — Run a Small Church Without a $400/mo SaaS

Planning Center scales fast. Breeze is $50. Pushpay is hundreds. For a 150-person congregation with a volunteer treasurer, that's real money. churchadmin is the self-hostable option.

Read more

Product Spotlight: inkbook — Run a Tattoo Shop Out of More Than DMs

Most tattoo shops run on Instagram DMs and a shared Google Calendar. It works until it doesn't. inkbook is the app for the shop tired of deposits falling through and aftercare that never goes out.

Read more

Product Spotlight: vacaypro — STR Host Ops Without Hosting a SaaS

Every small Airbnb host I know has a Trello board, a cleaner text thread, an Airbnb messages inbox, and 40 iCal subscriptions. vacaypro replaces all of it for 1-50 unit hosts.

Read more

Product Spotlight: familyhub — Replace the Fridge Calendar

We tried four family calendar apps over two years. All wanted to be social networks. familyhub is the one we kept — ours, on our laptop, nobody turning our schedule into ad inventory.

Read more

Product Spotlight: meetingmind — Make Decisions Stick

If your team has ever re-litigated a decision three meetings after it was made, this one's for you. Decisions are first-class. Action items refuse to be forgotten.

Read more

Product Spotlight: shiftfill — A Shift Swap Board That Isn't a Group Chat

Sunday night, 9:47 PM. The manager's phone buzzes. 'Hey, can't make Tuesday, anyone cover?' shiftfill is for people tired of running the schedule from a group text.

Read more

Product Spotlight: coachboard — A Practice CRM for Coaches Who'd Rather Coach

Every solo coach I know runs their practice out of Google Calendar, a Notion doc, and a QuickBooks tab open for six weeks. coachboard is the app for when that finally stops working.

Read more

Product Spotlight: childmilestone — A Parenting Tracker That Isn't a Social Network

Milestones against pediatric norms. Memory log with photos. Growth chart against WHO curves. Vaccination record. All on your laptop, all yours, all exportable as a PDF memory book. For parents who hate handing their kid's first steps to a social network.

Read more

Product Spotlight: bookcircle — The Book Club CRM for Clubs That Actually Read

Create a circle, invite members with a code, vote on the next read with a SwipeNight-style interface, track progress, discuss the book without spoilers, and schedule the next meeting with iCal download. AI discussion questions when things stall.

Read more

Product Spotlight: advisorlink — AI Homeschool Portfolio Builder

A homeschool portfolio generator for families who are tired of pasting kids' work into Google Docs at midnight before advisor review. Claude writes the first-draft narrative; parents edit and ship the PDF.

Read more

Product Spotlight: honeybees — A Hive Log for Backyard Beekeepers Who Take Notes

Track each hive, each queen, each inspection. When you're staring at a frame that looks a little off, upload a photo — Claude reads the brood pattern, spots mite signs, and suggests your next move. Self-host free, or hosted for $29.

Read more

Product Spotlight: cheesemaking — For People Who Take Aged Cheese Seriously

If you've ever stood in front of a 21-day Brie wondering whether it's ready or needs another week, this one's for you. A batch-to-bite tracker for home cheesemakers with Claude Vision reading your aging wheels.

Read more

CI Caught a Backslash-in-F-String Bug That Python 3.12 Parses Fine

A line of code I pushed to shiftfill parsed fine on my laptop (Python 3.12), crashed on self-hosters (Python 3.10 and 3.11). CI caught it because we test across a version matrix. Small bug, but it's exactly the thing the matrix is for.

Read more

Deterministic Port Assignment and Other Unfashionable Choices

Every Dangercorn app binds to the same port every time, computed from a hash of its name. It's not a clever choice — service discovery would be more elegant. It's not a scalable choice — we'd need a registry eventually. It's a shippable choice, which is why we use it.

Read more

Why Every Dangercorn App Uses the Same Claude Client (dcch)

Every Dangercorn app that touches Claude imports from the same package: dangercorn-claude-helper, dcch for short. One retry policy, one fallback strategy, one cost log. Fix a bug once, every app on the fleet picks it up.

Read more

I Let Claude Write the Landing Page and Nobody Noticed

I used Claude to draft the first version of landing-page copy for a dozen verticals last month. Nobody noticed, until I told them. Here's the honest breakdown — what it got right, what I had to rewrite by hand, and why I'm not hiding it.

Read more

One Flask Template, 220 Apps — The Dangercorn Template Walked Through

Every Dangercorn vertical starts as a clone of the same repo. Flask, SQLite, Jinja, single-password auth, Stripe, a deterministic port assignment scheme, and a shared Claude wrapper. Here's a tour of what's inside dangercorn-saas-template and why each piece is there.

Read more

How We Shipped 31 SaaS Products in a Single Saturday

31 working Flask apps. 31 landing pages. 31 GitHub repos. All deployed. One Saturday. This is the story of what a day at the factory looks like when the template is dialed in, and why this is the only reason the 220-app strategy is viable.

Read more

We're Not Trying to Get to $100M ARR. Here's What We Are Trying to Do.

The default script for a software founder is: raise money, hire, grow, exit. Almost every piece of advice you'll read online assumes you're running that script. We're not. Here's what we're actually running, why it's different, and why the venture playbook would actively break what we're trying to build.

Read more

The TaskRabbit-Ignored Towns Are the Actual Market

TaskRabbit doesn't work in Port Angeles. Uber Eats is thin in Yakima. DoorDash shows you three restaurants in Port Townsend. Everyone chases dense urban markets because that's where unit economics work. The places they skip are where the actual software gap lives — and where we're pointing.

Read more

Why Every One of Our Apps Has a Self-Host Tier

$0, forever. Clone the repo, run python app.py, done. No feature-crippling, no trial timer, no email capture. Here's why giving away the core of every product is the best business decision we've made — and why it isn't actually giving anything away.

Read more

Why I'm Building 220 Vertical SaaS Apps Instead of One Big Product

Everyone tells you to pick one thing and grind. Narrow the wedge. Own the niche. We're doing something different — a factory that spins out 220 small SaaS apps from one Flask template. Here's why it's the right bet for us, even though conventional wisdom says it shouldn't work.

Read more

How I Built a 7-Node AI Agent Fleet in My Living Room

It started with one machine and an idea that got a little out of hand. Now there are seven nodes, seven personalities, and a distributed mesh running 24/7 out of a home office in the Pacific Northwest. Here's how it happened, what broke along the way, and what I'd do differently.

Read more

375 Cold Emails, 4 Replies, and What We Learned About AI Outreach

We built a database of 69,000 businesses, automated personalized audits for each one, and sent 375 cold emails. We got 4 human replies and a 9.2% bounce rate. Here's the honest breakdown — what worked, what didn't, and why we're keeping at it anyway.

Read more

I Built an AI That Bets on the Weather (and What I Learned)

Kalshi lets you bet on whether it'll hit 78°F in Los Angeles next Tuesday. I built an AI agent that scans those markets 24/7, compares ensemble weather model forecasts to the market price, and flags when the crowd has it wrong. Here's how the math works and what paper trading taught me.

Read more