No description
Find a file
kjuulh 556a41086a
feat: do checks
Signed-off-by: kjuulh <contact@kjuulh.io>
2026-01-11 22:17:30 +01:00
crates/litmus-services feat: do checks 2026-01-11 22:17:30 +01:00
end2end feat: add basic 2026-01-11 19:42:34 +01:00
forest/templates feat: use postgresql backend 2026-01-11 22:04:53 +01:00
public feat: use postgresql backend 2026-01-11 22:04:53 +01:00
readme.d/assets feat: add pngs 2026-01-11 21:10:17 +01:00
src feat: do checks 2026-01-11 22:17:30 +01:00
style feat: add base app 2026-01-11 20:59:05 +01:00
.env feat: use postgresql backend 2026-01-11 22:04:53 +01:00
.gitignore feat: add basic 2026-01-11 19:42:34 +01:00
Cargo.toml feat: use postgresql backend 2026-01-11 22:04:53 +01:00
LICENSE feat: add basic 2026-01-11 19:42:34 +01:00
mise.toml feat: use postgresql backend 2026-01-11 22:04:53 +01:00
README.md feat: do 60 2026-01-11 21:13:00 +01:00
rust-toolchain.toml feat: add basic 2026-01-11 19:42:34 +01:00

Litmus

A lightweight health check and status page application built with Leptos and nocontrol.

Front page

Details page

Requirements

Getting Started

Development

mise run dev
# or
cargo leptos watch

Production

mise run run
# or
cargo leptos serve --release

The application will be available at http://localhost:3000.

API Endpoints

Endpoint Description
GET /api/status Overview of all health checks with uptime stats
GET /api/status/checks/{id} Detailed stats and recent results for a specific check

Configuration

Health checks are configured via the nocontrol reconciler. Example configuration:

HealthCheck {
    id: "example".to_string(),
    name: "Example Service".to_string(),
    url: "https://example.com/health".to_string(),
    interval: Duration::from_secs(30),
    timeout: Duration::from_secs(10),
}