PitchHut logo
AMUD Dashboard
Unify your homelab with a zero-YAML, UI-driven control center.
Pitch

AMUD Dashboard is a lightweight, zero-dependency homelab control center designed for efficient management and telemetry. Built with Rust, it eliminates the overhead of legacy dashboards while providing a responsive UI and server architecture. With minimal resource usage, it delivers fast performance without complex configurations.

Description

The AMUD Dashboard serves as a unified control center and telemetry dashboard for homelabs, designed to optimize performance through an innovative, zero-YAML, UI-driven approach. This project stands out by utilizing compiled Rust for high efficiency, contrasting with traditional dashboards like Heimdall or Homarr that require heavier runtimes such as PHP or Node.js, and complex nested YAML configurations.

Key Features

  • Low Resource Usage: AMUD's server and telemetry application together consume between 35MB to 100MB of RAM, ensuring minimal overhead while providing real-time data monitoring.
  • Native Architecture: The system is composed of two essential components:
    1. amud-server: A web server that serves HTML content and manages state using SQLite, delivering fast responses with sub-millisecond route execution.
    2. amud-agent: A standalone daemon that gathers host metrics, interacts with Proxmox VE containers, and Docker runtimes, returning data to the server efficiently.

Technical Overview

  • Efficiency with Rust and Axum: The dashboard leverages Rust's capability to compile directly to machine code, eliminating unnecessary runtime overhead. The system employs Tokio for concurrent operations, allowing it to handle multiple telemetry streams and integrations effectively.
  • SQLite for Persistence: Configuration data is stored within an embedded SQLite database, removing the need for convoluted YAML files. This setup ensures that users can configure layouts, tabs, and other settings directly through the interface.
  • Direct Telemetry Collection: Unlike many legacy systems that consume high CPU cycles through frequent subprocess calls, the AMUD agent efficiently communicates with Proxmox VE and Docker through native API calls, enhancing performance and reducing resource consumption.

Telemetry Setup

  • Proxmox VE Integration: The AMUD agent automatically manages host metrics and requires authentication to interface with Proxmox VE for container monitoring through a generated API token.

Deployment Options

  • Docker Compose: Streamlined deployment with a combined server and agent setup using Docker containers to communicate over a shared volume.
  • Native Installation: For users preferring a non-containerized environment, a simple script is provided for installation in Proxmox VE LXC containers.

Performance Comparison

AMUD Dashboard significantly outperforms legacy solutions:

DimensionHeimdall (Legacy PHP)AMUD Dashboard (Rust)
EnginePHP 8+ / LaravelRust / Axum / Tokio
Execution OverheadHigh (Interpreted PHP-FPM)Zero (Native Machine Code)
Idle RAM Footprint~150MB35MB - 100MB (Combined)
Startup Time~2 - 5 secondsSub-millisecond

Support & Donations

Contributions and support for the AMUD Dashboard can be made through various channels such as GitHub Sponsors, direct donations via Stripe, or Ko-fi, helping to enhance and sustain project development.

0 comments

No comments yet.

Sign in to be the first to comment.