
A fast, batteries-included process manager.
Ferrox is a modern daemon to run and supervise long-lived processes with pm2-style DX and systemd-level stability, with a Rust core for safety and performance.
Zero-Downtime Reloads
Keep your services online with graceful, signal-driven reloads and blue/green deployment strategies.
Secure by Default
The control plane is local-first, using secure IPC with no network exposure unless you explicitly enable it.
First-Class Observability
Get immediate insights with JSON logs, a built-in Prometheus endpoint, and OpenTelemetry traces.
Simple, Powerful Configuration
Define your entire app ecosystem with a clean, human-readable TOML file. Ferrox fails fast with friendly errors to help you get it right.
# ferrox.toml for two apps: web (Node.js) and worker (Rust) version = 1 [defaults] restart = "always" stop_timeout_ms = 10000 log_format = "json" [apps.web] cmd = "node server.js" cwd = "./services/web" instances = 4 # 1..N | "cpu" watch = ["src", "package.json"] healthcheck = { http = "http://127.0.0.1:3000/health", interval_ms = 2000 } [apps.worker] cmd = "./target/release/worker" instances = 2 restart = "on-failure"
Ready to get started?
Install the Ferrox CLI with a single command and scaffold your first project in seconds.
cargo install ferrox