explaingit

louislam/uptime-kuma

Analysis updated 2026-06-20

86,301JavaScriptAudience · ops devopsComplexity · 2/5Setup · easy

TLDR

Uptime Kuma is a self-hosted monitoring tool that watches your websites and services every 20 seconds and alerts you via Telegram, Discord, Slack, or 90+ other channels when something goes down.

Mindmap

mindmap
  root((Uptime Kuma))
    What it does
      Monitor websites
      Alert on downtime
      Show status pages
    Monitor types
      HTTP HTTPS
      TCP
      DNS records
      Docker containers
    Tech stack
      JavaScript
      Node.js
      Docker
    Alert channels
      Telegram
      Discord
      Slack
      Email
    Features
      Status pages
      SSL monitoring
      Ping charts
      Two-factor auth
Click or tap to explore — scroll the page freely

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

What do people build with it?

USE CASE 1

Monitor all your websites and APIs from your own server and get instant Telegram or Discord alerts when something goes down.

USE CASE 2

Set up a public status page for your service showing real-time uptime history, hosted entirely on your own infrastructure.

USE CASE 3

Track SSL certificate expiration and DNS record changes across your domains from a single self-hosted dashboard.

USE CASE 4

Replace a paid uptime monitoring subscription with a free, self-hosted tool running on a small VPS or home server.

What is it built with?

JavaScriptNode.jsDockerVue.js

How does it compare?

louislam/uptime-kumasveltejs/svelteanuraghazra/github-readme-stats
Stars86,30186,48379,282
LanguageJavaScriptJavaScriptJavaScript
Setup difficultyeasyeasymoderate
Complexity2/52/52/5
Audienceops devopsdeveloperdeveloper

Figures from each repo's GitHub metadata at analysis time.

How do you get it running?

Difficulty · easy Time to first run · 30min

Docker is the easiest install path, non-Docker setup requires Node.js 20.4 or later, Git, and PM2.

In plain English

Uptime Kuma is a self-hosted monitoring tool for keeping an eye on whether your websites and services are up and responding. Instead of paying a hosted service like Uptime Robot to ping your sites, you run Uptime Kuma yourself on your own server, and it watches the things you tell it to watch and alerts you when something goes down. The author built it because existing self-hosted alternatives were unstable or unmaintained, and wanted a fancier UI. The way it works is that you install Uptime Kuma, most easily through Docker or Docker Compose, with non-Docker installation supported on major Linux distributions and on Windows 10 or Windows Server 2012 R2 or higher, then open it in a browser. From the dashboard you add monitors for the things you care about. The README lists supported monitor types: HTTP and HTTPS, TCP, HTTP keyword and JSON queries, WebSocket, ping, DNS records, push, Steam game servers, and Docker containers. Checks can run as often as every 20 seconds. When a monitor fails, Uptime Kuma can notify you through more than ninety supported channels including Telegram, Discord, Slack, and email. You can also publish public status pages, map them to specific domains, view ping charts and certificate info, and route checks through a proxy. Two-factor authentication is supported. You would use Uptime Kuma if you want a free, self-hosted alternative to commercial uptime-monitoring services for your own websites, APIs, home network, or hobby servers. The interface is multi-language. Non-Docker installation requires Node.js 20.4 or later, Git, and PM2 to run the server in the background. The project is built in JavaScript.

Copy-paste prompts

Prompt 1
Walk me through installing Uptime Kuma with Docker Compose on a Linux VPS, adding a monitor for my website, and sending alerts to a Telegram bot.
Prompt 2
Configure Uptime Kuma to check a JSON API endpoint every 60 seconds and alert me if a specific field in the response is missing or changes.
Prompt 3
Set up a public status page in Uptime Kuma mapped to my custom domain, showing uptime history for three separate services.
Prompt 4
Add a Docker container monitor in Uptime Kuma that alerts me on Slack if a specific container stops running on my server.
Prompt 5
Configure Uptime Kuma to monitor TCP port availability on an internal server and send email alerts when the port becomes unreachable.

Frequently asked questions

What is uptime-kuma?

Uptime Kuma is a self-hosted monitoring tool that watches your websites and services every 20 seconds and alerts you via Telegram, Discord, Slack, or 90+ other channels when something goes down.

What language is uptime-kuma written in?

Mainly JavaScript. The stack also includes JavaScript, Node.js, Docker.

How hard is uptime-kuma to set up?

Setup difficulty is rated easy, with roughly 30min to a first successful run.

Who is uptime-kuma for?

Mainly ops devops.

Open on GitHub → Explain another repo

This repo across BitVibe Labs

Scan in gitsafehub Deploy in gitdeployhub louislam on gitmyhub

Verify against the repo before relying on details.