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 moreWhen 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 moreThe 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 moreHow 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 moreThe 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 moreThe 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 moreThe 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 moreCI 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 moreWhy 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 moreOpenClaw — 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 moreWhen 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 moreStripe 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 moredcch 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 moreThe 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 moreFlask + 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 moreProduct 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 moreProduct 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 moreProduct 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 moreProduct 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 moreProduct 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 moreProduct 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 moreProduct 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 moreProduct 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 moreProduct 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 moreProduct 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 moreProduct 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 moreProduct 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 moreProduct 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 moreProduct 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 moreProduct 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 moreProduct 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 moreProduct 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 moreProduct 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 moreProduct 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 moreProduct 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 moreCI 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 moreDeterministic 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 moreWhy 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 moreI 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 moreOne 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 moreHow 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 moreWe'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 moreThe 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 moreWhy 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 moreWhy 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 moreHow 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 more375 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 moreI 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