Docs

Overview

A sleek, modern self-hosted status page to easily monitor and share service uptimes.

Vail is a standalone, self-hosted service status dashboard built with Next.js and Mantine UI. It allows you to monitor infrastructure, websites, game servers, and network endpoints with real-time health checks and latency reporting.

Key Features

  • Multi Protocol Monitoring: Built-in support for HTTP/HTTPS endpoints, TCP port checks, and Minecraft SRV DNS records with automatic port resolution.
  • Pure Server-Side Configuration: All services, credentials, and settings are loaded server-side from settings.json. Sensitive parameters are never exposed or stored in browser local storage.
  • Dark Mode Baseline: Deep obsidian theme (#08080a) with seamless light and dark mode toggling.
  • Dynamic Refresh Controls: Client-side refresh trigger with a live elapsed counter showing seconds since last status refresh.
  • Discord Webhook Alerts: Broadcast incidents, service degradation, and operational status directly to Discord channels with rich embed payloads.
  • Zero Database Requirement: Operates without external database dependencies; simply edit settings.json and deploy.

Architecture

Vail utilizes server actions and Edge/Node network APIs to conduct live health checks:

  1. HTTP/HTTPS Checker: Executes fetch requests with configurable timeouts and validates HTTP response status codes.
  2. TCP Socket Checker: Opens direct net socket connections to determine host reachability and round-trip latency.
  3. Minecraft SRV Checker: Resolves _minecraft._tcp SRV records via DNS, falling back to port 25565 when unrecorded.
  4. Live Status Dispatch: Latencies and statuses are evaluated on demand or periodically, streaming updates back to the UI.

Ready to deploy Vail? Head over to the Setup Guide to get your instance running in minutes.

On this page