Description
Checkmate est un hub de monitoring open source développé par BlueWave Labs, qui combine monitoring d'infrastructure, surveillance d'uptime, gestion d'incidents et status page dans une seule application web moderne. Sa promesse : remplacer une stack complète (Uptime Kuma + Better Stack + Statuspage) par un outil unique.
L'interface React, soignée et responsive, se distingue par sa vision « operations center » : vous voyez en un coup d'œil vos serveurs, monitors HTTP, status page publique, et flux d'incidents. Le tout avec un modèle d'équipe (workspaces) intégré nativement.
Le projet est jeune (1.0 sorti en 2024) mais progresse vite. C'est l'alternative la plus moderne à [[app-uptime-kuma]] si vous cherchez une stack 100% TypeScript, des fonctionnalités d'équipe et un look « 2025 ».
- ✅ Moniteurs HTTP(s), TCP, Ping, DNS, Docker containers
- ✅ Monitoring d'infrastructure : CPU, RAM, disque, uptime serveur
- ✅ Agents : remontée d'infos hardware depuis chaque host
- ✅ Status page publique : personnalisable, multi-incidents
- ✅ Gestion d'incidents : timeline, post-mortem, communication
- ✅ Notifications : Email, Slack, Discord, Webhook, Telegram
- ✅ Multi-tenants / workspaces par équipe
- ✅ Auth moderne : email/password, OAuth (Google, GitHub)
- ✅ RBAC : Admin, Editor, Viewer
- ✅ Docker Compose ready (DB Postgres incluse)
Public cible : équipes tech de PME/startup qui veulent un centre d'opérations unifié (monitoring + incident management) sans payer Better Stack ou Datadog. Pour du pur uptime perso, [[app-uptime-kuma]] reste plus simple.
Installation
Option 1 : Docker Compose (recommandé)
# docker-compose.yml
version: '3.8'
services:
checkmate-server:
image: bluewave-labs/checkmate-backend:latest
container_name: checkmate-server
restart: unless-stopped
environment:
- JWT_SECRET=changez-moi-en-secret-tres-long
- DB_CONNECTION_STRING=postgresql://checkmate:checkmatepw@db:5432/checkmate
depends_on:
- db
ports:
- "52345:52345"
checkmate-client:
image: bluewave-labs/checkmate-frontend:latest
container_name: checkmate-client
restart: unless-stopped
ports:
- "80:80"
labels:
- "traefik.enable=true"
- "traefik.http.routers.checkmate.rule=Host(`checkmate.example.com`)"
- "traefik.http.routers.checkmate.entrypoints=websecure"
- "traefik.http.routers.checkmate.tls.certresolver=letsencrypt"
db:
image: postgres:16-alpine
container_name: checkmate-db
restart: unless-stopped
environment:
- POSTGRES_DB=checkmate
- POSTGRES_USER=checkmate
- POSTGRES_PASSWORD=checkmatepw
volumes:
- checkmate-db:/var/lib/postgresql/data
volumes:
checkmate-db:
Option 2 : Build local (dev)
git clone https://github.com/bluewave-labs/Checkmate.git cd Checkmate docker compose -f docker-compose.dev.yml up
Configuration
- Accéder à l'UI :
https://checkmate.example.com(via [[app-traefik]]) - Créer le compte super-admin : bouton « Sign Up » au premier lancement
- Créer un workspace : Settings > Workspaces > New
- Ajouter des moniteurs : Monitors > Add > HTTP/TCP/Ping/Infra
- Déployer un agent sur chaque serveur (Docker ou binaire Node)
- Créer une status page : Status Pages > New, choisir monitors à publier
Alternatives
Open Source
- [[app-uptime-kuma]] — Plus mature, plus simple, plus d'intégrations
- [[app-prometheus]] + Grafana + Alertmanager — Stack pro open source
- [[app-glances]] + [[app-netdata]] — Monitoring système pur
- Cachet — Status page seule (maintenance mode)
- Gatus — Uptime monitoring orienté dev
Comparaison Checkmate vs autres
| Critère | Checkmate | Uptime Kuma | Better Stack | Datadog |
|---|---|---|---|---|
| Self-hosted | ✅ | ✅ | ❌ (free tier) | ❌ |
| UI moderne | ✅✅ | ✅ | ✅✅ | ✅✅ |
| Incident management | ✅ | ❌ | ✅ | ✅ |
| Status page | ✅ | ✅ | ✅ | ✅ |
| Infrastructure monitoring | ✅ | ❌ | ✅ | ✅✅ |
| Maturité | ⚠️ jeune | ✅✅ | ✅✅ | ✅✅ |
| Multi-tenant | ✅ | ⚠️ | ✅ | ✅ |
Verdict : Checkmate est la réponse 2025 à « je veux un outil tout-en-un, beau, en TypeScript ». Si vous êtes prêt à tolérer les bugs d'un projet jeune, c'est un excellent choix. Sinon, restez sur [[app-uptime-kuma]] pour l'uptime pur.
Propriétaires (ce que Checkmate remplace)
- Better Stack (à partir de $25/mois)
- Datadog ($0.10/host/jour, cher)
- Statuspage par Atlassian (status page seule, $99/mois)
- Pingdom (legacy)
Sécurité
- Auth JWT + bcrypt, avec OAuth2 (Google, GitHub) en option
- HTTPS obligatoire via [[app-traefik]]
- RBAC : Admin / Editor / Viewer par workspace
- API tokens séparés des sessions utilisateur
- Logs d'audit : qui a fait quoi, quand
