
The "Magic" Moment I sent a single WhatsApp message, 20 minutes later, a live, multi-cloud status dashboard (prototype Demo) was public at status.aboutcloud.io. It features two global vantage points, zero stored secrets, a fully automated pipeline, and—crucially—a monthly infrastructure cost of exactly €0.
Here is the blueprint of how I built it.
Live Demo E2E (End to End)
The Vision: Why aboutcloud.io? aboutcloud.io isn't just a domain; it’s a sandbox for exploring production-grade architecture. The philosophy is "Cloud Adoption Framework (CAF) first and Zero Trust by design." Every project must be Microsoft-aligned, Cloudflare-enhanced, and open-source-centric. The goal for this status dashboard was to prove that you don't need a massive budget to implement high-availability monitoring with a Zero Trust security posture.
The Architecture: The Dual-Vantage Strategy A status page is only as good as its data. To avoid "false positives," I implemented two independent vantage points to check services every 5 minutes:
Architecture
The Zero Trust Pipeline: Killing Long-Lived Credentials In modern DevSecOps, "Zero Trust" isn't a buzzword; it's a requirement. We eliminated long-lived credentials by ensuring no permanent secrets exist in the environment.
main branch./api/ingest endpoint via an x-ingest-secret header. The database has no public write access.Six steps, fully automated:
1. Provision (Terraform)
→ Azure RG + Function App + Storage
→ Cloudflare D1 database
→ DNS CNAME (status.aboutcloud.io)
→ CF Pages custom domain binding
2. Bootstrap D1 schema
→ wrangler d1 execute --remote
3. Deploy CF Worker
→ npx wrangler deploy
4. Deploy Azure Function
→ az functionapp deployment source config-zip
5. Deploy CF Pages
→ npx wrangler pages deploy
6. Summary
→ GitHub step summary with live URLs
Triggered by a WhatsApp message → OpenClaw AI → gh workflow run.
The Reality Check: Hard Lessons from Issue #30 This wasn't a "one-click" success. It took nine iterations to polish the edge cases. If you're building something similar, watch out for these "gotchas" documented in Issue #30:
npm ci will fail without a committed package-lock.json. Always generate this locally before pushing your Worker code.npm installs across different jobs. Each job runs on a fresh runner. Use npx to ensure the binaries you need are fetched on the fly.wrangler pages deploy.By combining AI orchestration (OpenClaw), serverless compute, and OIDC-based security, we've built a production-grade status page for the cost of a domain name. Multi-cloud doesn't have to be expensive—it just has to be well-architected.
If you're running a similar setup or have questions, reach out in the comments or on LinkedIn.
— Antonio | AboutCloud
arusso@aboutcloud.io

When Microsoft pushed passkeys from future direction to deploy now, I started getting the same question from every IT lead I spoke to: Who in our tenant can actually adopt passkeys this week? And who can't, and why? It's a deceptively simple question. The tooling situation around it is not. The Entra admin portal has the answer spread across four blades. The Microsoft Graph API has the right primitives, but no single endpoint that combines them. The hosted SaaS scanners want either a privilege
By Antonio Russo

A practical guide to building a secure, passkey-authenticated Model Context Protocol gateway , with real infrastructure, real code, and real lessons learned on Windows 11 with PowerShell and a Terminal Session Why This Matters Claude Code is a powerful agentic coding assistant. Out of the box, MCP servers run locally via STDIO , meaning your GitHub tokens, API keys, and credentials sit on every machine where you run Claude. Scale that across workstations, add a second developer, or run Claude
By Antonio Russo