[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"$f3ps7hlcjc5y0h":3},{"code":4,"message":5,"data":6,"timestamp":72},10000,"success",{"full_name":7,"position":8,"description":9,"language":10,"stars":11,"forks":12,"stars_gained":13,"age_days":14,"hn_threads":15,"one_liner":45,"summary_md":46,"topic":47,"github_topics":50,"license":66,"homepage":67,"updated_at":68,"history":69},"caddyserver\u002Fcaddy",9,"Fast and extensible multi-platform HTTP\u002F1-2-3 web server with automatic HTTPS","Go",78357,5174,56,4301,[16,22,28,34,40],{"id":17,"title":18,"points":19,"comments":20,"posted_at":21},21154893,"Caddy Proposal: Permanently change all proprietary licensing to open source",357,76,"2019-10-04",{"id":23,"title":24,"points":25,"comments":26,"posted_at":27},32768454,"Caddyhttp: Enable HTTP\u002F3 by Default",284,115,"2022-09-08",{"id":29,"title":30,"points":31,"comments":32,"posted_at":33},31170280,"Show HN: Caddy v2.5.0",269,112,"2022-04-26",{"id":35,"title":36,"points":37,"comments":38,"posted_at":39},40517576,"Caddy 2.8",179,75,"2024-05-29",{"id":41,"title":42,"points":13,"comments":43,"posted_at":44},32916272,"Caddy 2.6 is out, the biggest release since Caddy 2",7,"2022-09-20","A web server and reverse proxy for people who want working HTTPS without hand-running certificate renewal.","## The problem\n\nRunning your own web server means managing TLS certificates: obtaining them, renewing them, handling OCSP, and recovering when an ACME endpoint misbehaves. With nginx or Apache you usually bolt on Certbot and a cron job, then discover the failure mode the day a renewal silently breaks. Caddy's pitch is that certificates are the server's job, not yours — it provisions and renews them by default, including for internal names and IPs via its own local CA.\n\n## What's different\n\nCompared with nginx and Apache, the trade-off is configuration model. Caddy's native config is JSON and it is driven through an admin API, with the Caddyfile as a compact human-facing front end and adapters that convert formats such as NGINX config. The API-first design allows live config changes without restart. The other real differentiator is a plugin system that compiles extensions into the binary, so a feature you don't need isn't shipped. nginx offers dynamic modules too, but Caddy's stance — no external dependencies, not even libc — makes the binary a single deployable artifact. It also speaks HTTP\u002F1.1, HTTP\u002F2 and HTTP\u002F3 by default.\n\n## Who it's for\n\nSelf-hosters, small teams and platform engineers who terminate TLS for internal or public services and would rather not own a certificate pipeline. It is a good fit for anyone running many small sites or containers where automated cert issuance matters more than raw tuning knobs. People with heavy existing nginx configs, mature tuning workflows, or who need a module for something not yet ported should look elsewhere first; migrating is real work, and the plugin ecosystem, while broad, is not nginx's.\n\n## Cost of adoption\n\nYou download a single binary and put it on PATH, or build from source with Go 1.26.0 or newer. Plugins require rebuilding via `xcaddy build`, which means a Go toolchain in your CI. Low ports may need `setcap` on Linux. The license is Apache-2.0, so no commercial restriction. The main risk is conceptual: the JSON config structure and API-driven model are more to learn than a flat nginx conf, and the README itself points users to a getting-started guide before anything else. The README is otherwise marketing-heavy and light on migration details; the documentation site carries the real weight.\n\n## Verdict\n\nCaddy is not new. It was created in 2015 and has 78,353 stars after 4,301 days, so this is a mature project with a long track record rather than a spike. The recent signal is modest — one day on the daily board at +56 stars, though +2,477 stars this month and #2 on the Go monthly board suggests steady, broad interest rather than a surge. For a project that has been in production for years and manages certificates as a core concern, the adoption question is about configuration philosophy, not survival. If you want automatic HTTPS with minimal moving parts, it earns its place; if you have deep nginx investment and no certificate pain, the migration isn't obviously worth it.",{"slug":48,"name":49},"devops","DevOps & Self-hosting",[51,52,53,54,55,56,57,58,59,60,61,62,63,64,65],"acme","automatic-https","caddy","caddyfile","go","golang","http","http-server","http3","https","privacy","reverse-proxy","security","tls","web-server","Apache-2.0","https:\u002F\u002Fcaddyserver.com","2026-10-24T17:06:20Z",[70],{"date":71,"stars":11,"stars_gained":13},"2026-10-24",1792868446]