I've been paying UptimeRobot for years. It works. The free tier is generous. I have no real beef with them. But every time I added a 6th monitor, the upgrade modal appeared. Every time I logged in to check a site, the dashboard nudged me toward Pro. Every time I wanted a public status page on my own domain, that was a paid feature too. Eventually I asked the question every indie dev asks at some point: how hard could this actually be? It turned out: a weekend to MVP, two weeks to ship to paying customers. Here's the architecture, the parts that surprised me, and the bugs that cost me an afternoon each. The whole product, on one page Probe a list of URLs every minute. HEAD or GET, optional body keyword check. Detect "down" reliably — don't email you because of one flaky packet. Email when status flips. Don't email every minute the site stays down. Render a public status page at a custom slug. Bill it. $9/month for 25 monitors, free up to 5. That's the spec.…