The Extensible Terminal Workspace. Your machine, one pane.
Orbit is a fast, highly-aesthetic terminal OS and developer dashboard written in Rust. It's the most complete keyboard-driven workspace — one pane, four modes, zero mouse.
Live terminal workspace in action. Watch 1080p 60FPS video • Visit Website
Orbit is designed to sit on a secondary monitor and never be closed. It is not just a system monitor; it is a complete developer workspace powered by a WebAssembly plugin ecosystem.
It uses zero web tech, runs on roughly 0.5% of a core at idle, and bypasses standard terminal cell boundaries by dynamically rendering block characters at a smooth 60 FPS.
Install Orbit via NPM (Recommended for prebuilt binaries) or Cargo.
# Via NPM (Recommended)
npm install -g @ziuus/orbit
# Via Cargo
cargo install --git https://github.com/ziuus/orbit-tui.gitNote: If you are migrating from our previous iteration, simply rename your configuration folder:
mv ~/.config/vanta ~/.config/orbit
| Key | Page | What's on it |
|---|---|---|
1 |
Dashboard | System facts, distro logo, visualizer, top processes, interactive status, memory, network, calendar. |
2 |
Monitor | Comprehensive system & process matrix. Filter, sort, and manage running tasks effortlessly. |
3 |
Aesthetic | Ambient environments. Matrix rain, 3D starfield, spinning donut, pinned media, full-width visualizer. |
4 |
Workspace | Built-in File Manager (with image previews), Agenda, Tasks, RSS feeds, and Obsidian vault viewer. |
? |
Help | Keybind reference overlay. |
A deep dive into your system's heartbeat. Every vital graph on top, every active process below. Sort it, filter it, tree it, kill it.
For when the build is running and you want a premium ambient display. Includes support for custom pinned images.
Includes 7 immersive ambient scenes:
- Audio Visualizer
- Matrix Rain
- Flip Clock
- Topographic Map
- True 3D Starfield (reacts to CPU spikes and music bass)
- Conway's Game of Life (auto-seeding)
- Terminal Snowfall (piles up and melts dynamically)
Turn your terminal into a productivity hub. Manage files (with image previews), read RSS news, track tasks, and view your Obsidian vault with markdown syntax highlighting. Press e on any focused panel to edit content in your $EDITOR.
| Key | Action |
|---|---|
1 2 3 4 |
Switch workspace (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 |
Ctrl + ↑/↓ |
Resize dashboard components vertically |
Processes (Monitor): ↑↓ PgUp PgDn Home End select · / filter · s sort field · r reverse · t tree · ←→ fold · c full command · k SIGTERM · K SIGKILL.
Cycle through built-in themes with T:
dark · catppuccin · tokyo-night · nord · gruvbox · dracula · light · solarized-light
You can load custom themes dynamically without recompiling Orbit:
- Create a
themesfolder inside your config directory (e.g.~/.config/orbit/themes/). - Drop in a
.tomlfile with your theme name (e.g.,cyberpunk.toml). - Define your colors using hex codes (
bg,accent,surface, etc.). - Press
Tin Orbit to cycle to it.
Orbit is fully extensible via WebAssembly (WASM). You can install community widgets, or build your own!
- Install via Menu: Run
orbit menuto browse and install extensions interactively. - Local Dev: Use
orbit link /path/to/my_widget.wasmto test custom plugins instantly without publishing.
Explore and download community extensions at our official registry: 👉 github.com/ziuus/orbit-integrations
- CONFIGURATION.md: Layouts, custom shell widgets, and performance profiles.
- EXTENSIONS.md: Orbit Extension Developer Guide (WASM).
- AGENTS.md: AI Agent architecture guide for modifying Orbit.
- ORBIT_CONFIG_SKILL.md: Prompt instructions for your AI to configure your dashboard.
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 |
Issues, new themes, and PRs are welcome!
git clone https://github.com/ziuus/orbit-tui.git && cd orbit-tui
cargo run --release
# Ensure CI passes
cargo fmt --all -- --check
cargo clippy --all-targets -- -D warnings
cargo testRead CONTRIBUTING.md first to understand our sampler-thread rule (never do I/O inside a render()) and our UI degradation contract.
MIT — Do what you like, keep the notice.

