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

๐Ÿ“– Reference

The configuration language and the directives it accepts. Directive reference

These pages describe v0.2.2. The v0.1.x line is unmaintained. Project status lists supported behavior and known release defects; read Upgrading before replacing an older version.

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.