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
Building for Africa: Mobile Money, Local Pricing, and Why It Matters
Why we built sh0 from Abidjan with Mobile Money payments, 5-language support including Swahili, and pricing designed for African developers.
The Bugs That Almost Broke Us
Git pull failures, CSRF blocking uploads, stale Caddy processes, FTP IPv6 incompatibilities, and Docker network aliases -- the bugs that almost derailed sh0.
OpenAPI as Single Source of Truth: Docs, MCP Tools, and Playground
How we used utoipa to auto-generate an OpenAPI 3.1 spec from Rust handler annotations, then used that spec to generate API docs, an interactive playground, and MCP tool definitions.
The sh0 CLI: 10 Commands That Mirror the Dashboard
How we built the sh0 CLI with 10 commands that mirror every dashboard action -- deploy, logs, env vars, health checks, and SSH into containers.
License Enforcement: Free, Pro, Business -- Gating Features in Rust
How we implemented a 3-tier license system in a self-hosted PaaS -- generous free tier, feature gating in Rust, dashboard upgrade prompts, and the pricing decisions behind it.
14 Days, 105 Sessions, 1 AI CTO: The Complete Story of Building sh0.dev
The complete story of building sh0.dev -- a production-grade PaaS with 488 tests, 119 templates, 25 MCP tools, and an AI assistant -- in 14 days from Abidjan with zero human engineers.
Cron Jobs and Preview Environments: Two Features, Zero Downtime
How we built cron job scheduling with timeout enforcement and preview environments with PR webhook integration -- developed in parallel using git worktree isolation.
Monitoring and Alerts: Email, Slack, Discord, Telegram, Webhooks
Building a monitoring system with periodic Docker stats collection, threshold-based alert evaluation, and multi-channel dispatch to Email, Slack, Discord, Telegram, and webhooks.
34 Rules to Catch Deployment Mistakes Before They Happen
We built a pure-Rust static analysis engine with 34 rules across 8 categories to catch security issues, misconfigurations, and deployment mistakes before they reach production.
Building an MCP Server: 25 Tools, 3-Tier Safety, OpenAPI-Driven
How we built sh0's MCP server with 25 tools, OpenAPI-driven auto-generation, scoped API keys, risk classification, and confirmation tokens for destructive operations.
Multi-Server BYOS: SSH Tunnels, Image Transfer, and Trust On First Use
How we built multi-server support: SSH tunnels to remote Docker sockets via russh, disk-based image transfer, Trust On First Use host key verification, and node-aware deployment.