Repolode
huilang-me

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 CloudUptimeRobot

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. 1

    Fork the repository to your GitHub account

  2. 2

    In the Cloudflare Dashboard, create a Worker from the forked GitHub repository

  3. 3

    Set the build command to npm run build:frontend

    npm run build:frontend
  4. 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