Sub-millisecond search.
Zero cloud. All yours.
Orb is a keyboard-first launcher with a Rust core — local app indexing, <1ms search, and no data leaving your machine. One shortcut to summon, Esc to vanish.
curl -fsSL https://orb.zerx.dev/install | bash Built different. By design.
Most launchers call a server. Orb doesn't. A Rust-powered search engine runs entirely on your machine — no round-trips, no subscriptions, no data leaving your desk.
Rust core. No compromises.
The search engine, app indexer, and IPC daemon are written in Rust and run entirely on your machine. Results appear before you finish typing — prefix matches score highest, ranking is deterministic.
Mouse optional.
Navigate, launch, open settings — your hands never leave the keyboard unless you want them to. Every action has a key.
Zero telemetry. Truly private.
No analytics, no crash reporters, no usage pings. Your search queries, app usage, and clipboard data never leave your machine.
Detach any panel into its own window.
Press Ctrl+D on Clipboard, Calculator, or Settings to pop it out as a standalone window. Pin it on top, keep it visible — or dismiss it. One window per feature, each process-isolated with its own Rust runtime.
Calculator, no app switch.
Type a math expression directly in the search bar. Result appears inline — hit Enter to copy. No context switch, no extra window.
Clipboard history, searchable.
Every copy is saved locally in SQLite. Search your clipboard history the same way you search apps — fast, private, no cloud sync needed.
Always listening. Never in the way.
A tiny Rust daemon watches for your hotkey via evdev, bypassing X11/Wayland
entirely. Works on any display server, uses ~5 MB of memory, and reloads config without restart.
Unix socket. No cloud.
Daemon and UI communicate over a Unix Domain Socket at
~/.local/share/orb/orb.sock.
CLI commands also use the same socket — show, hide, launch, quit.
Any hotkey. Hot-reloaded.
Configure your hotkey in ~/.config/orb/settings.json.
The daemon detects changes every 500 ms and reloads without restart.
Defaults to Alt+Space.
How Orb works
Two small processes, one Unix socket. No cloud, no Electron, no interpreter overhead.
- evdev hotkey (
Alt+Space) - ~5 MB memory
- hot-reload config
- spawns UI on demand
orb.sock- launches on hotkey
- exit on blur / Esc
- zero business logic
- Riverpod state only
FRB- app indexer
- <1ms search
- SQLite clipboard
- structured logging
~/.local/share/orb/orb.sock ~/.local/share/orb/logs/orb.log ~/.config/orb/settings.json ~/.local/share/orb/clipboard.db { "hotkey": "alt+space", "theme": "dark", "language": "en", "clipboard_max": 200, "ai_enabled": false }
Scriptable from day one.
Every feature the UI exposes is also accessible from the terminal.
The same binary, orb, is both the GUI launcher and the CLI tool.
orb search <query>Search apps and print ranked results as JSON to stdout.
orb showSend IPC signal to show or hide the launcher window.
orb launch <app-id>Launch an application by its .desktop file ID.
orb statusPrint daemon status, PID, and log path as JSON.
orb logsTail the current log file in real time (tail -f equivalent).
orb quitGracefully exit the running Orb instance via IPC.
[
{
"id": "firefox.desktop",
"name": "Firefox",
"score": 100
},
{
"id": "firedragon.desktop",
"name": "FireDragon",
"score": 50
}
] { "running": true, "pid": 12345, "log": "~/.local/share/orb/logs/orb.log", "version": "0.1.0" }
One command to get started.
Paste the command below in your terminal. The installer sets up the daemon, configures udev hotkey permissions, and starts Orb automatically.
curl -fsSL https://orb.zerx.dev/install | bash - Downloads the latest Linux x86_64 binary
- Installs to
~/.local/bin/orb(no sudo needed) - Enables the systemd user service & sets up udev rules
- Press Alt+Space to launch
evdev for hotkey capture and systemd for service management.