Skip to content

frozendark01/argusapp

Repository files navigation

CI Docker Release

Argus Dashboard


InstallOverviewCustom ServicesPWA

A lightweight self-hosted personal infrastructure dashboard built with Express + React (Vite). Dark mode by default. Displays service data in a bento-grid layout with auto-refresh every 30 seconds. Supports real API integration and custom service endpoints.

Features

  • Weather displayed inline in header (location, temp, condition)
  • Gotify push notification settings (notifies on status changes, warnings, offline events)
  • API Connection Setup guide page at /setup
  • Dark/Light theme toggle
  • Auto-refresh every 30 seconds
  • Skeleton loading states
  • Real API integration with automatic fallback to mock data
  • Custom services: add any API endpoint as a dashboard widget

Bookmarks

  • Editable bookmark cards section at top of dashboard
  • Each bookmark has: name, URL, icon (from lucide-react), and color
  • CRUD via API: GET/POST /api/bookmarks, PUT/DELETE /api/bookmarks/:id
  • Default sample bookmarks provided (Proxmox, Portainer, Plex, AdGuard, Home Assistant)
  • In-memory storage (resets on restart)

Custom Services

  • Add any API endpoint as a monitored service on the dashboard
  • A specialized Service Monitor Card displays custom services with emphasis on URL and status
  • Configurable: name, base URL, API path, icon, category, value field, unit, status check field
  • CRUD via API: GET/POST /api/custom-services, PUT/DELETE /api/custom-services/:id
  • Also configurable via environment variables: CUSTOM_1_NAME, CUSTOM_1_URL, CUSTOM_1_API_PATH, etc. (up to 20)
  • JSON response is automatically parsed into dashboard metrics (top 4 fields displayed)
  • Supports nested field access via dot notation (e.g., "data.count")
  • Managed through Settings panel UI or env vars
  • In-memory storage for UI-added services (resets on restart); env-based services persist

Installation

Local Linux (one-click)

Deploy directly on Linux or LXC (Debian/Ubuntu, Alpine, Fedora, Arch). Requires Node.js 18+, npm, git, curl.

bash -c "$(curl -fsSL https://raw.githubusercontent.com/frozendark01/argusapp/main/ct/argus.sh)"

Optional overrides:

ARGUS_INSTALL_DIR=$HOME/argus \
ARGUS_PORT=5000 \
ARGUS_DATA_DIR=$HOME/argus/data \
bash -c "$(curl -fsSL https://raw.githubusercontent.com/frozendark01/argusapp/main/ct/argus.sh)"

Notes:

  • Default install path: /opt/argus
  • Systemd service name: argus

Service commands:

sudo systemctl status argus
sudo systemctl restart argus
sudo systemctl stop argus

Log location:

sudo journalctl -u argus -n 200 --no-pager

Uninstall:

sudo systemctl disable --now argus
sudo rm -f /etc/systemd/system/argus.service
sudo systemctl daemon-reload
sudo rm -rf /opt/argus

Docker (recommended)

### Download example.env
wget -O .env https://raw.githubusercontent.com/frozendark01/argusapp/refs/heads/main/example.env

Important: To persist bookmarks and Gotify config, you must mount a volume to /app/data.

Docker run

docker run -d \
  --name argus \
  -p 5000:5000 \
  --env-file .env \
  -v $(pwd)/data:/app/data \
  --restart unless-stopped \
  ghcr.io/frozendark01/argusapp:latest

Docker Compose

services:
  argus:
    image: ghcr.io/frozendark01/argusapp:latest
    container_name: argus
    ports:
      - "5000:5000"
    env_file:
      - .env
    volumes:
      - ./data:/app/data
    restart: unless-stopped

Volume Details:

  • Path: /app/data inside the container
  • Contents: bookmarks.json, gotify-config.json
  • Note: Without this volume, all bookmarks and Gotify settings will be lost when the container is removed or updated

Local development

Deploy this dashboard on your own server to monitor your home infrastructure.

Prerequisites

  • Node.js 18 or later
  • npm or yarn package manager
  • A Linux server (Ubuntu, Debian, etc.) or any machine that runs Node.js
git clone https://github.com/frozendark01/argusapp.git
cd argusapp
npm install
npm run dev

About

A lightweight self-hosted personal infrastructure dashboard.

Topics

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors