4eb2f0bee356648b9e7ed8a87aa97a7e9cda3a34
Checkmate
A full‑stack uptime and infrastructure monitoring app. The repository contains an Express/TypeScript API and a React/TypeScript client.
Project Structure
server/– Node.js API (TypeScript, ESM)- Source:
server/src - Routes mounted under
/api/v1/*viaserver/src/init/routes.ts - Tests:
server/tests - Build output:
server/dist
- Source:
client/– React + TypeScript (Vite)- Source:
client/src - Public assets:
client/public
- Source:
Key Features
- JWT authentication and permission checks (team/org).
- Monitors API: create, list (with sorting/pagination), get checks, toggle pause, update, delete.
- Import/Export monitors (
GET /api/v1/monitors/export,POST /api/v1/monitors/import). - Notification channels and diagnostics endpoints.
- System settings (SMTP) with env‑first email transport fallback to DB settings.
Getting Started
- Prerequisites: Node 18+, MongoDB
- Environment
- Server: create
server/.envwith at least:MONGODB_URI=mongodb://localhost:27017/saasJWT_SECRET=replace_meORIGIN=http://localhost:5173- Optional SMTP:
SMTP_HOST,SMTP_PORT,SMTP_USER,SMTP_PASS
- Server: create
- Install
cd server && npm cicd ../client && npm ci
- Run
- API:
cd server && npm run dev(listens onhttp://localhost:52345) - Client:
cd client && npm run dev(Vite dev server)
- API:
Scripts
- Server
npm run dev– Start API in watch modenpm run build– Type‑check and compile (tsc + tsc‑alias)npm test/npm run test:coverage– Jest tests and coverage
- Client
npm run dev– Start Vite dev servernpm run build– Type‑check and buildnpm run preview– Preview production build
Notes
- The API expects valid JWTs on most routes; see
server/src/routesfor middleware usage. - Mongo connection retries are handled in
server/src/db/MongoDB.ts. - Email transport prioritizes env config; if unset, it uses values from system settings.
Description
Checkmate is an open-source, self-hosted tool designed to track and monitor server hardware, uptime, response times, and incidents in real-time with beautiful visualizations. Don't be shy, join here: https://discord.com/invite/NAb6H3UTjK :)
https://checkmate.so/
good-first-contributiongood-first-issuegood-first-projecthacktoberfesthelp-wantedincidentinfrastructureinfrastructure-monitoringmuimui-materialserver-monitorserver-monitoringserver-monitoring-toolsstatuspageuptimeuptime-checkeruptime-monitoruptime-monitoringuptime-statusuptimerobot
Readme
AGPL-3.0
47 MiB
0 Stars
1 Watchers
0 Forks
Languages
TypeScript
97.9%
JavaScript
1.4%
Shell
0.6%