Decided to try Caddy instead of Nginx for a pet project. Three main reasons:
- Automatic HTTPS out of the box
- 5-line configs instead of 50
- HTTP/3 support without complex setup
What worked well
Set up in 10 minutes. The config looks like this:
example.com {
reverse_proxy localhost:3000
}No certbot, reloads, or syntax checks. HTTPS worked immediately.
Pain points
Modules must be compiled into the binary. No dynamic loading like Nginx. Requires rebuilds for every update.
Keeping Nginx for production. But for personal projects - it's deployed and working.