Version 0.1 Alpha: the core and nine modules

The reverse proxy that explains itself

BareProxy is a bare core with modules around it. The core does the part of nginx most applications use: TLS, routing, health checks, config changes that drop nothing, and a record of every request. It tells you why any request went where it did, and what a config change will do before it goes live. Caching, compression, rate limits and the rest are modules you add.

Under 5,000

Lines of Go in the core, a budget the project publishes and keeps

1 page

The whole config grammar

0

Dependencies from outside the Go project

9

Add-on modules, each optional; the core needs none of them

Design budgets for version 0.1. Speed and memory are measured against nginx, with the same routes, in the Alpha report.

Articles

modules

BareProxy Modules: Nine Add-Ons Around a Bare Core

BareProxy Core does six things: proxying, TLS, routing, backend health, config changes and request tracing. Everything else is a module, compiled in only when you want …

security

Why BareProxy Routes on the Same Path It Forwards

Many proxy bypasses share one cause: the proxy reads a path one way and the application reads it another. A rule that blocks /admin/ does nothing if the request arrives …

Try it on your own config

Teams with an nginx config they'd like to shrink, or traffic they'd like to understand, can test BareProxy on their own setup. Write and say what you run today.

Get in touch