Self-hosted team chat running on Cloudflare Workers, with realtime messaging, a two-way Telegram bridge, and server-side encrypted messages and files.
huilang-me/CF-Server-Monitor
A free, self-hosted multi-server monitoring dashboard that runs on Cloudflare Workers, D1 and Durable Objects, with real-time metrics and offline alerts.
Open-source alternative to:Uptime Kuma Cloud
UptimeRobot
- Stars
- 2,997
- Forks
- 2,970
- Open issues
- 2
- Last commit
- yesterday
What is it?
CF-Server-Monitor is a server monitoring system deployed on Cloudflare Workers. A lightweight agent installed on each server reports metrics one way to the Worker, which stores them in D1 and pushes live updates to the browser over Durable Objects and WebSocket. The dashboard covers CPU, GPU, memory, disk, disk IO, network, load and uptime, with 7-day history charts and network latency and packet-loss tracking for China Telecom, Unicom, Mobile and BGP nodes.
The project targets low-cost, low-maintenance deployments. The panel, API, database and push channel all run on Cloudflare's free tier, and the agent only sends metrics, with no remote shell or command channel. Agents are available for mainstream Linux distributions, Alpine, OpenWrt, macOS, Synology DSM, fnOS, FreeBSD and Windows, and a Docker image is also provided.
The admin panel handles server management, and notifications cover offline and recovery alerts, expiry reminders, resource-load alerts and several channels including Telegram, Feishu, DingTalk, Bark, Gotify, SMTP and custom webhooks.
Key features
- 01Real-time metrics for CPU, GPU, memory, disk, network, load and uptime, pushed via WebSocket
- 027-day history charts with monthly traffic statistics and correction
- 03Latency and packet-loss tracking to China Telecom, Unicom, Mobile and BGP nodes
- 04Agents for Linux, Alpine, OpenWrt, macOS, Synology, Windows, FreeBSD and Docker
- 05Offline, expiry and resource-load alerts sent through multiple notification channels
- 06Map, chart, table and mobile views, plus an iOS Scriptable widget
Use cases
- Monitoring a small fleet of VPS or home servers without running a dedicated monitoring host
- Tracking uptime, traffic quotas and renewal dates for multiple cloud servers
- Keeping an eye on routers or NAS devices running OpenWrt or Synology DSM
Quick start
- 1
Fork the repository to your GitHub account
- 2
In the Cloudflare Dashboard, create a Worker from the forked GitHub repository
- 3
Set the build command to npm run build:frontend
npm run build:frontend - 4
Set the deploy command to npx wrangler deploy, then add the API_SECRET variable in the Worker settings
npx wrangler deploy
Things to know
- Requires a Cloudflare account and a GitHub account to deploy.
- Usage is bounded by Cloudflare free-tier quotas, so the default 60-second interval supports only about 60 servers.
- Recent releases are labeled Beta, so behavior may change between versions.
In collections
Topics
FAQ
- What is CF-Server-Monitor?
- A free, self-hosted multi-server monitoring dashboard that runs on Cloudflare Workers, D1 and Durable Objects, with real-time metrics and offline alerts. CF-Server-Monitor is a server monitoring system deployed on Cloudflare Workers. A lightweight agent installed on each server reports metrics one way to the Worker, which stores them in D1 and pushes live updates to the browser over Durable Objects and WebSocket. The dashboard covers CPU, GPU, memory, disk, disk IO, network, load and uptime, with 7-day history charts and network latency and packet-loss tracking for China Telecom, Unicom, Mobile and BGP nodes.
- Is CF-Server-Monitor free to use? What license does it have?
- CF-Server-Monitor is open source under the MIT license. Check the license terms before using it in commercial products.
- Is CF-Server-Monitor still maintained?
- Actively maintained. The last commit to CF-Server-Monitor was on Nov 6, 2026.
- What can I use CF-Server-Monitor for?
- Monitoring a small fleet of VPS or home servers without running a dedicated monitoring host Tracking uptime, traffic quotas and renewal dates for multiple cloud servers Keeping an eye on routers or NAS devices running OpenWrt or Synology DSM
- How do I install CF-Server-Monitor?
- Fork the repository to your GitHub account In the Cloudflare Dashboard, create a Worker from the forked GitHub repository Set the build command to npm run build:frontend: npm run build:frontend Set the deploy command to npx wrangler deploy, then add the API_SECRET variable in the Worker settings: npx wrangler deploy
- Where can I get CF-Server-Monitor?
- The source code and installation instructions are on GitHub: https://github.com/huilang-me/CF-Server-Monitor
Summary generated by AI from the project's README. GitHub stats refresh daily.
Related projects
Self-hosted uptime monitoring tool that tracks HTTP, TCP, DNS, ping, Docker and other services with alerts and status pages.
Self-hosted health dashboard that monitors services over HTTP, ICMP, TCP, DNS and more, evaluates response conditions, and sends alerts.
A lightweight self-hosted server probe and cloud monitoring dashboard for tracking multiple nodes' status, resources, latency and services.
Self-hosted, end-to-end encrypted temporary file sharing that runs on your own Cloudflare Workers, D1 and R2 account.
A bookmark manager built on Cloudflare Workers and D1 that saves links via a bookmarklet or Chrome extension, with no account required.