sh0
Self-hosted deployment. Single binary. Zero complexity.
A deployment platform in a single Rust binary (~2MB). Git push deployments, automatic SSL, built-in AI chat with 20 MCP tools, database management, browser terminal, and multi-server orchestration.
Building sh0
What Your AI Actually Sees: The Developer's Guide to Working With Claude Code
Claude Code cannot see your screen. This fundamental misunderstanding costs developers hours. Here's what your AI actually perceives and how to work with it effectively.
230 Checks, 0 Critical: How We Audit a 5,000-Line Feature with AI
How we used a 3-session build + 3-round audit methodology to ship a 5,000-line mail hosting feature with zero critical issues.
Auto-Subdomains for File Storage: Extending the App Pattern to Infrastructure Services
How we extended sh0's auto-subdomain system from apps to file storage -- giving every MinIO instance public S3 and console URLs with zero configuration.
The 2FA Setup That Forgot the QR Code
sh0's 2FA setup showed a raw secret key but no QR code. Here's how a missing frontend library turned a complete backend into unusable UX.
Dormant Infrastructure: Adding Container Runtime Abstraction Before We Need It
How we added container runtime abstraction to sh0 -- gVisor, Kata Containers support -- as dormant code that changes nothing today but saves weeks later.
Building a Global Domains Page That Actually Shows Everything
How we built a unified domains page that shows every service URL across all deployed apps -- from internal Docker ports to public domains.
Building Managed S3 Storage Into a Self-Hosted Platform
How we built managed MinIO file storage into sh0 -- from bootstrap to shell injection fix -- in one day across 5 coordinated AI sessions.
From Blank Page to Docker Hub: How We Shipped 11 Features in One Session
One AI CTO session: CSP fix, self-update system, Docker Hub publishing, systemd auto-setup, uninstall command, 15-screenshot carousel, GeoIP analytics dashboard, and install script overhaul. Here's how we did it.
31 Bugs in Our Stack Detector: How We Audited the System That Builds Every Deploy
sh0's stack detector had 31 bugs -- from a Next.js project misdetected as Bun to a Laravel config that cached an empty APP_KEY. We fixed 28 in one session and learned why generated Dockerfiles are harder than handwritten ones.
The AI Stream That Never Drops: How We Made 5-Minute Generations Survive Network Failures
How we redesigned sh0's AI gateway so that 65,000-token generations survive client disconnects, browser crashes, and proxy timeouts. Nothing is ever lost.
Double Dogfooding: We Built a Language, Built Its Website With It, Then Hosted It on Our Own PaaS
ZeroSuite built FLIN (programming language), built flin.sh with it, then deployed it on sh0 (their own PaaS). Three layers of dogfooding, six bugs found, zero remaining.
The Deploy That Broke Itself: How 2 Simultaneous Deploys Exposed 8 Concurrency Bugs
Two simultaneous deploys crashed sh0's pipeline. We found 8 concurrency bugs across 3 audit rounds. Here's everything we learned about async Rust, Docker race conditions, and why AI auditors catch what AI builders miss.