CertMagic is a Go library that automates TLS certificate issuance and renewal for any Go program using ACME.
The library solves the problem of managing TLS certificates by handling the entire lifecycle automatically. It obtains certificates from certificate authorities like Let's Encrypt, renews them before expiration, and staples OCSP responses for enhanced privacy and security. The approach requires minimal code—a single line can enable HTTPS on an HTTP handler—while managing HTTP to HTTPS redirects and certificate storage transparently. As long as a domain name points to the server, the tool keeps connections secure without manual certificate management.
Developers should choose this tool if they are building Go applications that need production-grade TLS automation without the operational burden of certificate management. It suits any project serving content over HTTPS, from simple services to complex deployments. The library supports advanced scenarios including wildcard certificates, on-demand TLS issuance, DNS challenges for environments behind load balancers or in clusters, and integration with multiple certificate authorities including ZeroSSL. The README positions it as the most mature and feature-complete ACME client library for Go, with support for the full suite of ACME features that other Go libraries do not match.
The project maintains active test coverage through continuous integration workflows. Development activity shows consistent engagement with the codebase through regular updates and maintenance of the library's core functionality.