selfhost.directory

The index of self-hostable projects — ranked, categorized and served with live updates.
Own your data and stop giving it to big tech.

GitHub
Tinystatus logo

Self-host Tinystatus

0.2.0

Static status page generator via shell script

ReleaseOpen SourceMIT
Updated9 months ago
LanguageShell
Setup difficultyEasy
ThemeDark mode
Stars
515
Requires
Coreutils, Curl, Nc (netcat), Ping

What is Tinystatus?

Tinystatus is a tiny shell script that generates a static HTML status page for monitoring services. It reads a CSV configuration file defining HTTP, ping, and port checks (with IPv4/IPv6 variants), runs them in parallel using curl, netcat, and ping, and outputs a single ~1 KB HTML file with optional incident history. The generated page supports automatic dark mode via CSS color-scheme and is responsive. Users clone the repository, edit checks.csv and incidents.txt, run the script periodically (e.g., via cron), and serve the resulting index.html with any web server. It has minimal dependencies (curl, nc, ping, coreutils) and is licensed under MIT.

Should you self-host Tinystatus?

Tinystatus scores 45/100 on selfhost.directory (how scoring works) and ranks #37 of 51 in Monitoring & observability. It has 515 GitHub stars.

There was no stable release in the past 12 months, so check the repository's recent activity before you rely on it.

Setup is easy: most people get it running in one sitting. It is MIT-licensed and written mostly in Shell.

Its closest alternative on selfhost.directory is GoAccess (75/100, 21 091 stars). It scores higher overall, so compare the two before you pick. See Tinystatus vs GoAccess side by side.

Features

  • Configurable Timeout
  • Exit code on outage
  • Grouped services
  • HTTP/HTTPS checks
  • Incident history
  • IPv4/IPv6 Support
  • Minimal dependencies
  • Parallel checks
  • Port checks
  • Static HTML output

Tinystatus README

How to configure Tinystatus

  • CHECKS_FILEchecks.csvPath to the CSV file defining service checks

    Path to the CSV file defining service checks

  • HEADERGlobal StatusMain heading displayed on the status page

    Main heading displayed on the status page

  • INCIDENTS_FILEincidents.txtPath to the incidents text file

    Path to the incidents text file

  • OUTAGE_RCfalseExit with non-zero code when outages are detected

    Exit with non-zero code when outages are detected

    values: true/false

  • TIMEOUT10Timeout in seconds for each check

    Timeout in seconds for each check

  • TITLETinystatusPage title shown in browser tab

    Page title shown in browser tab

  • USER_AGENTMozilla/5.0 (X11; Linux x86_64; Debian) AppleWebKit/537.36User-Agent string sent with HTTP checks

    User-Agent string sent with HTTP checks

More in Monitoring & observability

Rate this project

Click to rate — no account needed.

0 comments

Posting as guest
Loading comments…