Introduction
ServerBee is a lightweight, modern VPS monitoring system built with Rust and React.
ServerBee is a lightweight, self-hosted VPS monitoring probe system built from the ground up with a modern Rust backend and React frontend. It is designed to be fast, resource-efficient, and easy to deploy on small VPS instances.
Key Features
- Real-time monitoring -- CPU, memory, disk, network, load average, temperature, GPU, disk I/O, and traffic metrics streamed over WebSocket
- Custom dashboards -- Build multiple dashboard layouts with server cards, charts, maps, uptime timelines, Markdown notes, and service status widgets
- Alert rules -- Flexible threshold and event-based alerts with debounce logic, maintenance suppression, and multiple notification channels
- Service monitors -- SSL certificate, DNS, HTTP keyword, TCP, and WHOIS checks with history and notifications
- Web terminal and remote tasks -- Browser-based PTY sessions, one-shot commands, and scheduled cron tasks with retries
- File manager -- Controlled remote browse/read/write/upload/download operations with path sandboxing and audit logs
- Ping and network quality monitoring -- ICMP, TCP, HTTP probes, preset network targets, packet loss/latency charts, CSV export, and traceroute
- Docker management -- Container list, stats, events, logs, networks, volumes, and container actions when enabled
- Public status pages -- Share service health with custom slugs, incidents, maintenance windows, uptime timelines, themes, and custom CSS
- Branding and themes -- Preset/custom OKLCH themes plus white-label title, logo, favicon, and footer text
- Lightweight footprint -- Single binary server and agent, SQLite database, no external database required
- OAuth and mobile support -- GitHub, Google, generic OIDC login, mobile sessions, pairing, and push notification support
- VPS cost insights -- Score price-to-resource value with normalized cost metrics, surfaced in the servers list, the dashboard server card, and a per-server insights panel
Tech Stack
| Component | Technology |
|---|---|
| Server | Rust (Axum 0.8, sea-orm, tokio, SQLite) |
| Agent | Rust (sysinfo, tokio-tungstenite) |
| Frontend | React 19, Vite 7, TanStack Router, TanStack Query, Recharts, shadcn/ui, Tailwind CSS v4 |
| Protocol | WebSocket (JSON frames, binary for terminal data) |
| Database | SQLite with WAL mode |
How It Works
ServerBee follows a hub-and-spoke architecture:
- The Server is the central dashboard that runs the web UI, REST API, background jobs, and manages all WebSocket connections
- Agents are installed on each VPS you want to monitor -- they collect system metrics and report back to the server every few seconds
- The Frontend is a React SPA embedded into the server binary, so there is nothing extra to deploy
All communication between agents and the server happens over WebSocket with JSON-encoded messages. Terminal sessions and some streaming features use dedicated WebSocket routes with binary or structured frames.