Saltar al contenido
← Volver a proyectos

Vanta

Fast, aesthetic terminal system dashboard in Rust. CPU, memory, disk, network, GPU, processes, clock, calendar, visualizer.

#vanta

Your machine, one pane.

A fast, aesthetic terminal system dashboard in Rust. The most complete keyboard-driven terminal dashboard — one pane, four modes, zero mouse.

npm CI Release License Landing page


vanta dashboard page

Vanta collapses everything you care about into one terminal pane: CPU, memory, disk, network, GPU, processes, now-playing, a block-digit clock, a calendar, and an audio visualizer. Keyboard only. ~3 MB binary, ~2–5% CPU at the default 30 fps.

npm install -g @ziuus/vanta && vanta

#Install

MethodCommandNotes
npm npm install -g @ziuus/vanta Fetches the prebuilt linux-x64 binary. No Rust needed.
Prebuilt binary Releases Download the tar.gz, drop vanta on your PATH.
cargo cargo install --git https://github.com/ziuus/vanta Any architecture. Needs a Rust toolchain.
From source git clone https://github.com/ziuus/vanta && cd vanta && cargo run --release For hacking on it.

One-liner, no install:

npx @ziuus/vanta@latest

#Requirements

Linux (vanta reads /proc and /sys). Building from source also needs libdbus:

sudo pacman -S dbus              # Arch
sudo apt install libdbus-1-dev   # Debian / Ubuntu
sudo dnf install dbus-devel      # Fedora

Optional tools that light up extra panels — vanta degrades quietly without them:

Tool Unlocks
cava Audio visualizer (falls back to an idle wave)
nmcli Wi-Fi SSID + signal strength
nvidia-smi NVIDIA GPU utilisation, VRAM, temp
docker Running-container count
checkupdates Pending Arch package updates

#Managing vanta

vanta --version                 # what am I running
vanta --help                    # usage + keys

npm update -g @ziuus/vanta      # update  (npm)
npm uninstall -g @ziuus/vanta   # remove  (npm)

cargo install --git https://github.com/ziuus/vanta --force   # update  (cargo)
cargo uninstall vanta                                        # remove  (cargo)

rm -rf ~/.config/vanta          # drop config + persisted theme/page

Where things live:

Path What
~/.config/vanta/config.toml Config, plus the theme / page / visualizer vanta persists for you
$(npm root -g)/@ziuus/vanta/bin/ The npm-installed binary
~/.cargo/bin/vanta The cargo-installed binary

Vanta respects XDG_CONFIG_HOME if you set it.

#Pages

Key Page What's on it
1 Dashboard System facts + distro logo, semicircle gauges, CPU graph & cores, storage, big clock, now playing, visualizer, top processes, interactive status, memory, network, calendar
2 Monitor btop-style: CPU / memory / disk I/O / network / GPU graphs on top, full process table below (sort, filter, tree, kill)
3 Aesthetic Huge clock, calendar, matrix rain, spinning donut, pinned media (photos), full-width visualizer
4 Workspace Built-in File Manager (with image previews), Agenda, Tasks, RSS feeds, and Obsidian vault viewer
? Help Keybind reference overlay

#2 — Monitor

Every graph on top, every process below. Sort it, filter it, tree it, kill it.

vanta monitor page

#3 — Aesthetic

For when the build is running and you want something to look at. Includes support for displaying a custom pinned image.

vanta aesthetic page

#4 — Workspace

Turn your terminal into a productivity hub with a built-in file manager (with image previews), RSS news reader, tasks, agenda, and Obsidian vault viewer (with markdown syntax highlighting). Press e on any focused panel to edit the content in your $EDITOR.

#? — Help

Every key, on screen, on any page.

vanta help overlay

#Keys

Key Action
1 2 3 4 Switch page (persisted as startup page)
Tab / Shift-Tab Cycle panel focus · Esc clears
Enter Zoom the focused panel to the full page · Esc back
T Next theme (persisted)
v Visualizer style: bars / mirror / wave / peaks
+ / - Sample faster / slower
Space n p Play/pause · next · previous (MPRIS, any page)
< > Volume down / up
? Help overlay
q Quit
~ / F12 Toggle Debug Logs overlay (s saves them to file)
S / , Open Settings overlay
Ctrl + ←/→ Resize dashboard columns horizontally (when focused)
Ctrl + ↑/↓ Resize dashboard components vertically (when focused)

Processes (Monitor): ↑↓ PgUp PgDn Home End select · / filter (Enter keeps, Esc clears) · s sort field · r reverse · t tree · ←→ fold · c full command · k SIGTERM · K SIGKILL (press twice to confirm, x cancels)

Workspace: e opens the active note, agenda, task list, or file in your $EDITOR.

Calendar (focused): ←→ month · ↑↓ year · Home today

#Themes

dark · catppuccin · tokyo-night · nord · gruvbox · dracula · light · solarized-light

Cycle with T — your choice is written back to the config file.

#Custom Themes

You can easily load custom themes dynamically without recompiling Vanta.

  1. Create a themes folder inside your config directory (e.g. ~/.config/vanta/themes/).
  2. Drop in a .toml file with your theme name (e.g., cyberpunk.toml).
  3. Define your colors using hex codes:
    bg = "#000000"
    accent = "#00ff00"
    secondary = "#ff00ff"
    surface = "#111111"
    text = "#ffffff"
    dim = "#555555"
    green = "#00ff00"
    yellow = "#ffff00"
    red = "#ff0000"
    
  4. Press T in Vanta to cycle to it, or set it explicitly in your config.toml (theme = "cyberpunk").

#Configuration & Customization

Vanta is highly configurable via ~/.config/vanta/config.toml. You can:

  • Change the layout, refresh rates, and themes
  • Add your own Custom Widgets using shell commands or files
  • Install community-built WASM Extensions to add entirely new UI panels without recompiling

For a complete guide to all configuration options, extensions, and custom widgets, please read: 👉 docs/CONFIGURATION.md

#Architecture

All telemetry is collected on a single background sampler thread (/proc, /sys, sysinfo, D-Bus) into lock-guarded snapshots; the render loop only reads snapshots and never blocks on I/O.

Layer Technology
TUI Ratatui 0.29 + Crossterm
Telemetry sysinfo, /proc, /sys/class/{hwmon,drm,power_supply}
GPU NVIDIA (nvidia-smi), AMD (sysfs), Intel (clock only)
Media MPRIS over D-Bus (dbus crate)
Audio viz cava raw output, idle wave fallback

#Contributing

Issues and PRs welcome — bug reports, new themes, new panels, or a GPU vendor that isn't covered yet.

git clone https://github.com/ziuus/vanta && cd vanta
cargo run --release

# CI runs exactly this — make it pass first
cargo fmt --all -- --check
cargo clippy --all-targets -- -D warnings
cargo test

Read CONTRIBUTING.md first — it covers how the code is laid out, the sampler-thread rule (never do I/O inside a render()), the panel degradation contract, and how to add a theme.

Good first contributions:

  • A new theme in src/theme.rs (add a constructor + its name to THEME_NAMES)
  • Per-interface network stats
  • NVMe / extra hwmon temperature sources
  • Mouse click-to-focus

#License

MIT — do what you like, keep the notice.


built by zius · if it's useful, a ⭐ helps

Nueva versión disponible.