Getting Started
Installation
Windows
npm (recommended) — no admin, no Windows Defender issues, works everywhere. After installing, type santui to launch:
npm install -g santui
santuiPowerShell:
irm https://santuiapp.vercel.app/install.ps1 | iexThis extracts to %LOCALAPPDATA%\santui\current and adds to your PATH.
macOS
npm (recommended) — works everywhere with no extra setup. After installing, type santui to launch:
npm install -g santui
santuiInstall script — downloads binary to ~/.local/share/santui/current and adds it to your PATH:
curl -fsSL https://santuiapp.vercel.app/install.sh | shmacOS users: Install libmpv for the Radio Stream Player:
bashbrew install mpv
Linux
npm (recommended) — works everywhere with no extra setup. After installing, type santui to launch:
npm install -g santui
santuiInstall script — downloads binary to ~/.local/share/santui/current and adds it to your PATH:
curl -fsSL https://santuiapp.vercel.app/install.sh | shLinux users: Install libmpv for the Radio Stream Player:
bashsudo apt install libmpv2 # Debian / Ubuntu sudo dnf install libmpv # Fedora sudo pacman -S mpv # Arch
Note: The npm method requires Node.js to be installed. No plugins included — install them from the Plugin Registry after launching.
Uninstall
Windows
| Method | Command |
|---|---|
| npm | npm uninstall -g santui |
| PowerShell | irm https://santuiapp.vercel.app/uninstall.ps1 | iex |
Both remove Santui from your system. The npm method also removes the santui command from PATH automatically.
macOS / Linux
| Method | Command |
|---|---|
| npm | npm uninstall -g santui |
| install script | curl -fsSL https://santuiapp.vercel.app/uninstall.sh | sh |
Both remove Santui from ~/.local/share/santui and clean up PATH entries.
Usage
Santui is keyboard-driven. Here are the keybindings:
| Key | Action |
|---|---|
? | About screen |
Ctrl+P | Command palette |
↑ / ↓ | Navigate lists |
Enter | Select item |
Esc | Back / close panel |
CLI flags
Run santui --help for a full reference, or use these flags:
| Flag | Action |
|---|---|
--version / -V | Print version and exit |
--list-plugins / plugins | List installed and available plugins, then exit |
reset | Delete all data (config, plugins, database) and start fresh |
Plugin Registry
Plugins extend Santui with new capabilities. Open Ctrl+P → Plugin registry to see what's available.
Santui ships with a large first-party plugin catalog — from radio streaming and weather to Git dashboards and Quran reading. All of them are available through the Plugin Registry — open Ctrl+P → Plugin registry to browse and install.
From the registry you can:
- Browse available plugins with descriptions and version info
- Install — download and set up a plugin with one Enter press
- Enable / Disable — toggle plugins on and off
- Installed plugins appear in your command palette under the Modules category
To get started, install a plugin from the registry — try Radio Stream Player for internet radio or Music Preview to preview audio files. Then open Ctrl+P and select it to start using it.
Radio Stream Player requires libmpv for audio playback. On Windows it's bundled in the release archive; on macOS
brew install mpv; on Linuxapt install libmpv2(Debian/Ubuntu) ordnf install libmpv(Fedora).
Development
To build Santui from source and test plugins locally without a GitHub release:
Prerequisites
- Rust 1.85+ (edition 2024)
- For the Radio Stream Player: libmpv (
apt install libmpv2,brew install mpv,dnf install libmpv, or bundled on Windows)
Build & run
git clone https://github.com/sonyarianto/santui
cd santui
cargo build --workspace && cargo run -p santuiDev mode (test plugin registry locally)
By default, the Plugin Registry fetches manifests from GitHub Releases. In development, use dev mode to test the full install flow without publishing anything:
Windows (PowerShell):
.\scripts\dev-setup.ps1 ; $env:SANTUI_DEV=1; cargo run -p santuimacOS / Linux:
./scripts/dev-setup.sh && SANTUI_DEV=1 cargo run -p santuiWhat dev-setup does:
- Builds the host binary + builtins + stable plugins (those with
"status": "stable"inplugins-manifest.json) - Copies native assets into
target/debug/native/ - Scans for plugin binaries and generates
plugins.jsonwith real SHA-256 hashes
When SANTUI_DEV=1, the app:
- Loads plugins from the local
plugins.jsoninstead of GitHub - Copies binaries from your build directory instead of downloading
- Shows a
[DEV]badge in the registry UI so you know you're in dev mode
See
docs/development.mdfor detailed tooling info.
Themes
Press Ctrl+P, select Switch theme, and browse 38 OpenCode themes with live preview.