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.

Rust + Svelte 20 MCP tools 488+ tests

Building sh0

Thales & Claude sh0

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.

12 min Mar 25, 2026
ruststatic-analysissecuritycode-health +2
Thales & Claude sh0

Taming Caddy as a Programmatic Reverse Proxy

How we turned Caddy into a fully programmatic reverse proxy managed via its Admin API, with automatic SSL, route syncing, and crash recovery.

10 min Mar 25, 2026
caddyreverse-proxysslrust +2
Thales & Claude sh0

Blue-Green Deploys: Building a Zero-Downtime Pipeline in Rust

The 8-step deploy pipeline that powers sh0: clone, analyze, build, deploy, health check, route, swap, and cleanup -- with blue-green container swaps and automatic disk management.

11 min Mar 25, 2026
deploymentblue-greenrustdocker +3
Thales & Claude sh0

The 16KB Bug: How a Pipe Buffer Froze Our Entire Platform

A 16KB pipe buffer caused Caddy to freeze every 5 minutes. The debugging story of a classic Unix pipe deadlock that took us from confusion to a 5-line fix.

9 min Mar 25, 2026
debuggingcaddyunixpipe-buffer +3
Thales & Claude sh0

Day Zero: 10 Rust Crates in 24 Hours

How we scaffolded an entire PaaS platform -- 10 Rust crates, 24 database tables, Docker engine client, API server, build engine, and health checks -- in a single day.

11 min Mar 25, 2026
rustarchitecturepaascargo-workspace +3
Thales & Claude sh0

Writing a Docker Engine Client from Scratch in Rust

Why we wrote a custom Docker Engine API client using hyper and Unix sockets instead of shelling out to the Docker CLI, and the multiplexed stream parsing that made it work.

11 min Mar 25, 2026
rustdockerunix-sockethyper +2
Thales & Claude sh0

i18n from Day One: 5 Languages Across 105 Sessions

Why we built sh0 with 5-language support from the very first dashboard session, and how we maintained correct orthography across 105 development sessions.

11 min Mar 25, 2026
i18ninternationalizationsveltelocalization +2
Thales & Claude sh0

119 One-Click Templates: From WordPress to Ollama

How we built a YAML-based template system with variable substitution, dependency ordering, and 119 production-ready templates covering databases, CMS, AI/ML, and more.

10 min Mar 25, 2026
templatesyamldeploymentdocker +3
Thales & Claude sh0

Docker Compose on a PaaS: Parsing, Validating, Deploying

How we added Docker Compose support to sh0 -- parsing Compose v3 YAML, validating dependencies, detecting circular references, and deploying multi-service stacks.

7 min Mar 25, 2026
docker-composeyamldeploymentrust +2
Thales & Claude sh0

Backup Engine: AES-256-GCM, 13 Storage Providers, and FTP Nightmares

Building a backup engine with pluggable storage, AES-256-GCM encryption, 13 storage providers via OpenDAL -- and the IPv6 FTP bug that forced us to write our own client.

9 min Mar 25, 2026
backupencryptionstorageopendal +4
Thales & Claude sh0

Autoscaling in Rust: CPU Thresholds, Cooldowns, and Load Balancing

How we built horizontal scaling with Caddy load balancing, replica container management, and an autoscaler that evaluates CPU/memory thresholds with configurable cooldowns.

9 min Mar 25, 2026
autoscalingload-balancingcaddyrust +2
Thales & Claude sh0

Auto-Detecting 19 Tech Stacks from Source Code

How sh0's build engine detects 19 tech stacks, generates production-grade Dockerfiles with multi-stage builds, and creates optimized build contexts -- all in pure Rust.

11 min Mar 25, 2026
ruststack-detectiondockerfilebuild-engine +2