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.

Stylus logo

Self-host Stylus

v0.17.0

Status page for home infrastructure with script-based checks

ReleaseOpen SourceApache-2.0
Updated10 months ago
LanguageRust
Setup difficultyEasy
Stars
339
Port
8000 (HTTP web server and status API)
Docker
mmastrac/stylus
Install with Docker
Main dashboard with table visualization showing monitor statusesD3.js based visualization example

What is Stylus?

Stylus is a status page for home infrastructure and networks. It runs configurable test scripts written in bash, Python, or any language at regular intervals to check service health. The tool then generates a dynamic CSS stylesheet and JSON status endpoint that can drive HTML or SVG dashboards. The web UI includes built-in visualizations like tables and network diagrams, and can embed iframes or inject CSS into local pages. It runs as a single binary with no database required, using roughly 2MB RAM for a dozen services on a Raspberry Pi. Installation options include Docker (multi-arch), static binaries from GitHub releases, Cargo, or building from source. The project is written in Rust and licensed under Apache-2.0.

Should you self-host Stylus?

Stylus scores 49/100 on selfhost.directory (how scoring works) and ranks #11 of 19 in Infrastructure Monitoring. It has 339 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. An official Docker image is available. It is Apache-2.0-licensed and written mostly in Rust.

Its closest alternative on selfhost.directory is Beszel (81/100, 26 617 stars). It scores higher overall, so compare the two before you pick. See Stylus vs Beszel side by side.

Features

  • Built-in ping monitor
  • Built-in SNMP monitor
  • Custom script monitors
  • D3.js visualization support
  • Dynamic CSS generation
  • Grafana as monitoring source
  • iFrame Embedding
  • Lightweight resource usage
  • SSH remote test execution
  • Static binary releases
  • Status JSON API
  • SVG/network diagram visualization
  • Table visualization

Stylus README

How to install Stylus

Install Stylus with Docker

mkdir ~/stylus docker run --rm --name stylus -p 8000:8000 -v ~/stylus/:/srv mmastrac/stylus:latest init docker run --rm --name stylus -p 8000:8000 -v ~/stylus/:/srv mmastrac/stylus:latest

Multi-arch image; maps local config directory to /srv in container

Stylus releases & version history

More in Infrastructure Monitoring

Rate this project

Click to rate — no account needed.

0 comments

Posting as guest
Loading comments…