Atrium
open sourceOne door to every self-hosted service. A router on port 80 that sends /service to that service's own port, answers the root with a live status board, and leaves every existing hostname untouched. Standard library only.

About this project
Every service on a home server gets its own port, and nobody remembers port numbers, so half of them never get used. Atrium fixes the addressing problem with a single process on port 80: /zingy redirects to whatever is running on 4321, and the root answers with a board listing every service and whether its port is actually listening. It answers with a redirect rather than proxying, which matters more than it sounds — each app keeps its own origin and its own port, so there is no base-path configuration to add, no absolute URLs to rewrite, and no new bottleneck for uploads. The rule that made it safe to put in front of a working setup is that only anonymous addresses get the board, while every named host is passed through untouched to the reverse proxy that already served it, so no existing vhost could break. One JSON config, re-read when the file changes, and a systemd unit that grants exactly one capability so a privileged port does not mean running as root.