Main features
- HTTP, ping, TCP port, DNS, gRPC, WebSocket and game server monitors
- Response body matching with regex and JSON path
- SSL certificate and domain expiry checks
- Docker container status, health, resources and logs
- CPU, memory, disk, network and temperature through the Capture agent
- Scheduled Lighthouse audits with Core Web Vitals
- Geo checks from additional locations
- Status pages with five themes
- Incidents and scheduled maintenance
- Alerts by email, webhook, Slack, Discord, Teams, Telegram, PagerDuty, ntfy and SMS
- Bulk CSV import, team invitations and an API
What Checkmate does
Checkmate is a monitoring dashboard from Bluewave Labs that covers more ground than a pure uptime checker. Its monitors test websites and APIs over HTTP(S), hosts with ping, open TCP ports, DNS records, gRPC health endpoints, WebSocket handshakes and game servers. HTTP monitors run as often as every 15 seconds and can validate the response body with an exact match, a substring, a regular expression or a JMESPath expression on JSON, and every HTTPS monitor also tracks certificate and domain expiry. When a monitor’s status changes past a configurable threshold, Checkmate opens or resolves an incident and sends notifications.
Three features go beyond the usual uptime tool. Docker monitors connect to a local socket or a remote daemon over mutual TLS and record container state, health checks, CPU, memory and restart counts, optionally with recent log lines. PageSpeed monitors run Google Lighthouse on a schedule and keep the four Lighthouse scores and Core Web Vitals over time. And the Capture agent, a small Go program for Linux, Windows, macOS or a Raspberry Pi, reports CPU, memory, disk, network and temperature from each server.
Alerts, status pages and geo checks
Notifications can go to email, webhooks, Slack, Discord, Microsoft Teams, Telegram, PagerDuty, Matrix, Rocket.Chat, Pushover, ntfy, SignalGrid and Twilio SMS. Scheduled maintenance windows suppress alerts during planned work, and status pages with five themes are served from your own instance.
Primary checks run from the Checkmate server, but geo checks can repeat a monitor from extra locations every 5 to 30 minutes, which helps tell a regional or routing problem from a real outage. In the source code these checks go through the Globalping probe network, so the target must be reachable from the internet. Geo results are shown alongside the primary result rather than changing the monitor’s status.
Self-hosting Checkmate
The quickest install is the reference Docker Compose file, which starts the all-in-one Checkmate image and a MongoDB container. You set a JWT secret and the public URL, put a reverse proxy in front for TLS, and add an encryption key if you use TLS-secured Docker monitors. The interface is translated into 19 languages. For larger setups, worker mode moves check processing onto separate nodes; the project says it has tested more than 1,000 active monitors. A Helm chart exists, but the README notes it still deploys the older split images pinned to version 3.8.1. Third-party one-click hosts such as PikaPods and Elestio also offer it.
Each installation sends an anonymous heartbeat once a day with a random instance ID, the version and basic platform details; setting TELEMETRY_ENABLED=false turns it off. PageSpeed audits call Google’s PageSpeed Insights API, and the documentation recommends adding your own API key for higher rate limits.
Hosted version
Bluewave Labs does not offer a hosted service. A public demo instance shows the current build.
Limitations
MongoDB is a firm requirement, and hardware metrics mean installing Capture on every server you want to watch. PageSpeed monitoring depends on Google’s API and its quotas. Telemetry is opt-out rather than opt-in. Checkmate does not collect application traces or logs from your code, so it is not a substitute for an APM platform.
Who it suits
Checkmate fits small teams, agencies and home labs that want uptime checks, basic server and container metrics and page speed history in one self-hosted dashboard without paid tiers. If you want the smallest possible footprint, Uptime Kuma runs on SQLite; for detailed per-second server metrics, see Netdata.
License details
AGPL-3.0. No paid edition: the project states every feature is included without monitor limits. The optional Capture agent is also AGPL-3.0.
Technical details
Self-hosting needs
- MongoDB
Built with
- TypeScript
- Node.js
- React
GitHub topics
- good-first-contribution
- good-first-issue
- good-first-project
- hacktoberfest
- help-wanted
- incident
- infrastructure
- infrastructure-monitoring
- mui
- mui-material
- server-monitor
- server-monitoring
- server-monitoring-tools
- statuspage
Reviewed by the OpenSourcePicks editors from the project's repository and documentation. Something out of date? Tell us.