Show HN: Rootle – Browse and search remote source repositories without cloning

tknawara2 pts0 comments

rootle

rootle

browse remote source-control systems from your terminal. clone nothing.

github in-tree<br>any forge via stdio providers<br>rust<br>MIT

$ curl -fsSL https://rootle.dev/install.sh | sh<br>copy

every install path lives below · status: alpha

GitHub ↗

demo — pick a palette

catppuccin-mocha<br>dracula<br>gruvbox-dark<br>nord<br>one-dark<br>solarized-dark<br>tokyo-night<br>catppuccin-latte<br>github-light<br>one-light<br>solarized-light

rootle v0.3.2 · press ? for keybindings

The demo re-renders in your pick — the same eleven palettes<br>:settings lists in the app. First launch opens repo search;<br>rootle owner/repo jumps straight into a repo.

what it does

[01]

browse

Three miller columns — orgs → repos → trees — with a live syntax-highlighted preview pane: line numbers, theme-following colors, ␣ / find-in-file with n/N. No local clone.

h/lJ/K␣ /n/N

[02]

find & grep

Full-screen, Zed-style results: match chips, folded regions, per-file counts. Scope to a repo or search globally.

␣ f␣ g/

[03]

open & yank

Any file opens read-only in your editor. Yank the browser URL of anything you're looking at — anchored to the preview cursor line (#L42).

↵␣ y

[04]

clone

Mark repos, run the wizard. Org selections fan out; destinations land at //.

v:clone

[05]

configure

In-app settings write config.toml and hot-reload themes — code colors follow. The ? popup lists every keybinding.

:settings?

[06]

providers

GitHub ships in-tree. Anything else wraps in as a stdio child speaking NDJSON-RPC — the protocol is four methods; the scaffolding skill wraps your backend with you.

stdioNDJSON-RPC

compare

rootlegithub.comgh cliclone + editor<br>browse without cloning✓✓api only·<br>modal, keyboard-first TUI✓···<br>syntax-highlighted preview✓✓·✓<br>full-text grep in the terminal✓·gh search code✓<br>forges beyond GitHubstdio providers·GHES only✓<br>single static binary✓n/a✓n/a

keybindings — first-session cheatsheet · press ? in-app for the rest

navigate

j / kdown · up<br>h / lout · in<br>J / Kpreview line cursor<br>/filter any list<br>n / Nnext · prev match<br>vvisual multi-select

search

␣ srepo search<br>␣ ffind file<br>␣ ggrep<br>␣ /find in previewed file<br>enterjump to match<br>esccancel · clear

act

␣ yyank URL (line-anchored)<br>↵open in editor<br>:command line<br>?every keybinding<br>␣ cclear marks<br>qquit

install — pick your weapon · single static binary, no runtime

install.shmacOS · Linux · WSL

$curl -fsSL https://rootle.dev/install.sh | shcopy

homebrewmacOS · Linux

$brew install rootledev/tap/rootlecopy

cargoevery platform

$cargo install rootlecopy

misemacOS · Linux · Windows

$mise use github:rootledev/rootlecopy

from sourcerust 1.88+

$git clone https://github.com/rootledev/rootle && cargo install --path .copy

tarballsstatic musl

↗github releases — verify + untarv0.3.2

auth is zero-friction: gh auth login or ROOTLE_TOKEN<br>if already set up — everything else works anonymously. Every knob in<br>settings.

rootle install github search clone line

Related Articles