nfsen-ng is a modern, in-place replacement for the ageing NfSen web frontend. It sits on top of the existing nfdump tools and adds real-time SSE push, a responsive UI, and support for RRD or VictoriaMetrics as the storage backend.
No clone needed — just grab the compose file and go:
curl -O https://raw.githubusercontent.com/mbolli/nfsen-ng/master/deploy/docker-compose.yml
# Edit NFSEN_SOURCES, NFSEN_NFDUMP_PROFILES, and other env vars in docker-compose.yml, then:
# Production with bundled Caddy (auto-HTTPS, ports 80/443)
docker compose --profile proxy up -d
# Production behind your own reverse proxy (app on port 9000 only)
docker compose up -dImages are published on GHCR: ghcr.io/mbolli/nfsen-ng (app) and ghcr.io/mbolli/nfsen-ng-caddy (Caddy with Brotli).
Development (source mounted, auto-reload on file change):
git clone https://github.com/mbolli/nfsen-ng
cd nfsen-ng
docker compose -f deploy/docker-compose.dev.yml up -dSet NFSEN_SOURCES, NFSEN_NFDUMP_PROFILES, and other options as environment variables in your compose file. See the wiki for the full guide.
All documentation lives in the wiki:
- Installation — Docker and bare-metal setup, systemd service
- Configuration — settings file, all environment variables
- Import & admin — initial import, force rescan, daemon controls
- Architecture — component overview, signals, compression
- VictoriaMetrics — alternative datasource setup
- Upgrading from v0 — migration guide
