A fast terminal dashboard to launch, monitor, and manage apps, bookmarks, clipboard history, configuration files, Docker containers, Git repositories, network connections, SSH hosts, scripts, notifications, shell history, quick notes (scratchpad), an embedded shell terminal, and a calculator. Built in Rust with ratatui.
- Prerequisites: Rust stable, Cargo
- Build:
cargo build --release
- Run (dev):
cargo run
Tested on Linux/macOS/Windows. On Windows, run in a true terminal (Windows Terminal/PowerShell).
- Global:
q
quit,Tab
/Shift+Tab
next/previous section,j/k
or↓/↑
navigate,Enter
activate - Lists:
n
new,d
delete,r
refresh,t
toggle details,PgUp
/PgDn
Home
/End
- Search:
/
open fuzzy search (scoped to current section), type to filter,Enter
jump,Esc
close - Help:
?
toggle help overlay - Apps:
Enter
launch,s
stop process (also from Dashboard) - Clipboard:
Enter
copy to clipboard,p
pin/unpin entry - Configs:
Enter
open in editor,b
backup,v
view (scrollable with syntax highlighting),c
copy,o
open in editor,f
search - Docker:
Enter
exec into container,v
switch view (containers/images),a
toggle show all - Network:
v
switch view (connections/interfaces/ports),f
filter connections by state - SSH:
x
disconnect latest session (terminates the ssh process) - Scripts:
S
schedule selected script (example every 60s) - Git:
Enter
open in editor,S
scan for repositories - Scratchpad:
n
new note,c
copy to clipboard,e
export to path,R
rename,f
search notes,t
toggle preview - Shell:
i
input command,h
search history,C
clear history - Services:
s
start,S
stop,r
restart,E
enable,D
disable,l
logs,u
toggle user/system,f
filter,t
details - Calculator:
`
toggle typing mode,←→↑↓
navigate buttons,Enter/Space
press button,m
toggle basic/scientific mode,h
history view,r
recall from history,0-9
digits,+/-/*//^%
operators,()
parentheses,c/C
clear/clear all,y
copy result
Sections: 1
Dashboard, 2
Apps, 3
Bookmarks, 4
Clipboard, \
Configs, 5
Docker, 6
Network, 7
SSH, 8
Scripts, 9
Git, 0
History, -
Scratchpad, =
Shell, ]
Services, `
Calculator, [
Notifications
- Dashboard: running processes (scrollable), active SSH sessions, recent notifications
- Apps: auto-scan PATH for executables (on Windows, filters to .exe/.bat/.cmd/.ps1); show running processes via sysinfo
- Bookmarks: open files/dirs/URLs with platform-native open
- Clipboard: track clipboard history with timestamps, pin important entries, copy back to clipboard
- Configs: manage configuration files with backup, preview, copy, and search functionality
- Docker: view and manage containers and images; exec into running containers; toggle between running and all containers
- Git: scan directories for repositories; view status, branch, uncommitted changes, ahead/behind commits; open repositories in editor
- Network: monitor active connections with state filtering; view network interfaces with IP/MAC addresses; list listening ports with process info
- SSH: connect via system SSH (uses
-p <port>
); auto-detects active sessions by scanning runningssh
processes; disconnect (x
) ends the underlying process - Scripts: run commands; simple scheduling (example)
- History: browse and run recent shell commands
- Scratchpad: quick note-taking with auto-detection of your preferred editor (VSCode, Sublime, Notepad++, vim, etc.); search, rename, export, copy notes to clipboard
- Shell: embedded minimal shell terminal with built-in commands (
cd
,pwd
,history
, etc.) and external command execution through your system shell - Services: manage system services (systemd/launchd/Windows Services); start/stop/restart, enable/disable, view logs, filter by state
- Calculator: visual calculator with button navigation, basic and scientific modes, expression evaluation, calculation history, and result copying
- Notifications: system-level notifications for actions
- Context-aware fuzzy search
/
per section - Dynamic header: username, time, arch, detected shell, CPU cores and average usage
- Detects shell: PowerShell (Windows), Bash, Zsh, or Fish
- Loads recent history from:
- PowerShell:
%APPDATA%/Microsoft/Windows/PowerShell/PSReadLine/ConsoleHost_history.txt
- Bash:
~/.bash_history
- Zsh:
~/.zsh_history
- Fish:
~/.local/share/fish/fish_history
(or%APPDATA%/fish/fish_history
on Windows)
- PowerShell:
- Header shows the detected shell
Location:
- Linux:
~/.config/launchr/config.toml
- macOS:
~/Library/Application Support/launchr/config.toml
- Windows:
%APPDATA%/launchr/config.toml
On first run, a default file is created. Example (TOML):
# Bookmarks
[[bookmarks]]
name = "Home"
path = "~"
bookmark_type = "directory"
[[bookmarks]]
name = "Rust"
path = "https://www.rust-lang.org"
bookmark_type = "url"
# SSH Hosts
[[ssh_hosts]]
name = "Prod"
host = "prod.example.com"
port = 22
user = "ubuntu"
# Scripts
[[scripts]]
name = "List"
command = "ls -la"
description = "List current dir"
# Git repo search paths
git_search_paths = [
"~/Projects",
"~/Documents/GitHub",
"~/code",
]
# Scratchpad
[scratchpad]
editor = "nvim" # optional
# directory = "/path/to/notes" # optional
# Config files managed by Configs section
[[configs]]
name = "Bash Config"
path = "/home/you/.bashrc"
category = "Shell"
description = "Bash shell configuration"
editor = "nvim" # optional per-entry
An example file is available at examples/config.example.toml
.
Add entries in-app:
- Bookmarks:
n
thenname|path|type
- Configs:
n
thenname|path|category|description|editor
- SSH:
n
thenname|user@host:port
- Scripts:
n
thenname|command|description
Clipboard Module
- Stores clipboard content with metadata (type, timestamp)
- Pin frequently used entries to keep them persistent
- Supports text, command, and URL types
- Windows: uses
clip
command for clipboard operations
Configs Module
- Track and manage configuration files with categories and descriptions
- Open configs in editor in new terminal window (respects $EDITOR or custom per-config editor)
- Create timestamped backups of config files
- Preview config contents with syntax highlighting (scrollable with ↑↓, Esc to exit)
- Directory preview: shows directory contents with file sizes, prioritizes common config files
- Syntax highlighting for JSON, YAML, TOML, INI, bash, SSH, Git, Docker, and more
- Copy config contents to clipboard (directory info for directories)
- Search configs by name, path, category, or description
- Auto-detects common configs on first run (bash, zsh, git, ssh, vim)
- Shows file size and last modified time
Docker Module
- Lists containers with status, image, and port information
- Lists Docker images with repository, tag, and size
- Exec into containers (opens new terminal window)
- Toggle between running containers and all containers
- Requires Docker CLI installed
Git Module
- Scans configurable search paths for Git repositories (default: ~/Projects, ~/Documents/GitHub, etc.)
- Displays repository status: clean, modified, ahead, behind
- Shows current branch, uncommitted changes count, and last commit message
- Opens repository in available editor (nvim, nano, code etc.)
- Requires Git CLI installed
Network Module
- Connections view: active network connections with protocol, addresses, state, and process info
- Interfaces view: network adapters with IP addresses, MAC addresses, and status
- Ports view: listening ports with process names and PIDs
- Filter connections by state (ESTABLISHED, LISTEN, etc.)
- Uses platform-specific commands:
ss
/netstat
(Linux),netstat
(macOS),netstat
/ipconfig
(Windows)
Scratchpad Module
- Quick note-taking with automatic editor detection (checks for VSCode, Sublime Text, Notepad++, vim, etc.)
- Opens editors in a new window/terminal - launchr remains responsive and non-blocking
- Auto-generates timestamped filenames or use custom names
- Search notes by filename or content
- Copy note contents to clipboard
- Export notes to custom paths
- Rename notes in-place
- Preview pane with toggle (
t
) - Respects
EDITOR
environment variable or configured editor in config.toml - Default storage:
~/.launchr/scratchpad/
(configurable)
Shell Module
- Embedded terminal with command execution
- Built-in commands:
cd
,pwd
,clear
,exit
,export
,history
- External command execution through system shell (PowerShell on Windows, bash/zsh on Unix)
- Command history with exit status indicators (✓/✗)
- Working directory tracking, history search, clear history
- Shows current prompt with user@hostname:dir format
Services Module
- Cross-platform: systemd (Linux), launchd (macOS), Windows Services
- Start, stop, restart, enable, disable services
- View service logs (systemd only)
- Filter by state (running/stopped/failed) or toggle user/system scope
- Displays state, PID, memory usage, enabled status, description, uptime
- Search services by name or description
Calculator Module
- Visual calculator interface with button navigation using arrow keys
- Basic arithmetic: addition, subtraction, multiplication, division, exponentiation, modulo
- Scientific functions: sin, cos, tan, sqrt, log, ln, exp, abs, reciprocal, square
- Expression parsing with proper order of operations and parentheses support
- Calculation history with timestamps and recall functionality
- Real-time expression evaluation as you type
- Copy results to clipboard
- Toggle between Basic and Scientific modes with automatic scrolling for large layouts
- Typing mode for direct expression input with visual button navigation
- History view with dedicated panel toggle
- Uses
sysinfo
for processes,which
for PATH resolution, andcrossterm
/ratatui
for TUI. - Some actions spawn external programs; ensure they exist in PATH (e.g.,
ssh
,docker
,git
). - Network monitoring requires appropriate permissions to view process information on some systems.
MIT. See the LICENSE
file in the repository.