Skip to content

Pingclair

A reverse proxy and static file server written in Rust, with HTTP/1.1, HTTP/2, HTTP/3, automatic HTTPS, and a Caddyfile-compatible configuration language.

Pingclair serves HTTP/1.1, HTTP/2, and HTTP/3 from a single configuration, obtains and renews public certificates over ACME, and serves static files with compression and range requests. Its configuration language, the Pingclairfile, follows Caddyfile conventions.

example.com {
encode zstd gzip
reverse_proxy 10.0.0.10:8080 10.0.0.11:8080
}

🏃 Quickstart

Write a first Pingclairfile, validate it, and serve traffic. Quickstart

🧠 Concepts

How a configuration file becomes runtime state, and how a request is handled. Configuration model

The current release is v0.2.0-rc.3, a release candidate. These pages describe that release. The v0.1.x line is unmaintained and receives no security fixes. Project status lists what is supported, what is refused, and the defects known at tagging time.

Pingclair is measured against nginx and Caddy on the same host, with every candidate capped at two CPUs and an identical workload. The measured numbers, their conditions, and the rows where Pingclair is slower are published in Benchmarks.