# Checkmate — Open-Source Server Uptime & Infrastructure Monitoring > A self-hosted monitoring tool that tracks server hardware, uptime, response times, and incidents in real-time with beautiful visualizations and smart alerts. ## Install Save in your project root: # Checkmate — Open-Source Server Uptime & Infrastructure Monitoring ## Quick Use ```bash git clone https://github.com/bluewave-labs/Checkmate.git cd Checkmate cp .env.example .env docker compose up -d # Open http://localhost:5173 ``` ## Introduction Checkmate is an open-source, self-hosted infrastructure monitoring platform that tracks server uptime, response times, hardware metrics, and incidents. It provides a clean dashboard with real-time visualizations, configurable alerts, and status pages for communicating service health to users. ## What Checkmate Does - Monitors HTTP, HTTPS, TCP, and ping endpoints with configurable check intervals - Tracks server hardware metrics including CPU, memory, disk, and network usage via a lightweight agent - Generates public or private status pages showing real-time and historical service health - Sends alerts through email, Slack, Discord, PagerDuty, and webhook integrations - Provides incident management with timeline tracking and resolution notes ## Architecture Overview Checkmate uses a Node.js backend with Express, storing monitoring data in MongoDB for flexible schema and time-series queries. The React frontend with Material UI renders dashboards and status pages. A distributed check engine runs probes from configurable locations. The hardware monitoring agent is a lightweight Go binary that reports metrics via REST API. Redis handles job queuing for check scheduling and alert deduplication. ## Self-Hosting & Configuration - Deploy with Docker Compose; the stack includes the app server, MongoDB, and Redis - Configure monitoring targets through the web UI with URL, check interval, and expected status codes - Set alert channels in Settings: add SMTP credentials for email or webhook URLs for Slack/Discord - Install the hardware agent on monitored servers with a single binary and API key - Customize the public status page with your logo, colors, and subdomain ## Key Features - Real-time dashboards with response time charts, uptime percentages, and incident timelines - Lightweight hardware agent under 10 MB that reports metrics without heavy dependencies - Public status pages with customizable branding for end-user communication - Multi-user support with role-based access for teams managing different service groups - Incident annotations and maintenance windows to suppress alerts during planned downtime ## Comparison with Similar Tools - **Uptime Kuma** — Simpler setup for basic uptime checks; Checkmate adds hardware monitoring and status pages - **Beszel** — Focused on lightweight server stats; Checkmate provides a more complete incident management workflow - **Gatus** — Config-file driven; Checkmate offers a web UI for non-technical users to manage monitors - **Netdata** — Deep system observability; Checkmate is lighter with a focus on uptime and incident tracking - **Healthchecks** — Cron job monitoring; Checkmate covers HTTP endpoints, TCP ports, and server hardware ## FAQ **Q: How many monitors can Checkmate handle?** A: There is no built-in limit. Performance depends on check frequency and server resources; typical deployments monitor hundreds of endpoints on a small VPS. **Q: Does the hardware agent require root access?** A: The agent runs without root on most systems. Certain disk and network metrics may need elevated permissions depending on the OS. **Q: Can I monitor services from multiple locations?** A: Yes. Deploy additional probe nodes and register them with the central server to check endpoints from different geographic locations. **Q: Is there an API for integrating with CI/CD?** A: Yes. Checkmate exposes a REST API for creating monitors, querying status, and triggering incident updates programmatically. ## Sources - https://github.com/bluewave-labs/Checkmate - https://checkmate.so --- Source: https://tokrepo.com/en/workflows/5697b1b2-4080-11f1-9bc6-00163e2b0d79 Author: AI Open Source