reportal-0.2.0 is not a library.
RePortal
Jump between repos. Open in your editor. Stay in sync across machines.
RePortal is a single-binary CLI that keeps a registry of your dev repos and lets you fuzzy-jump between them, open them in your editor, and clone missing repos on a new machine.
Install
This gives you both reportal and rep (short alias) commands.
From source:
Quick start
# Set up config + shell shortcuts (rj, ro)
# Register a local repo
# Clone and register from a URL
# List all registered repos
# Jump to a repo (cd)
# Open a repo in your editor
Commands
| Command | What it does |
|---|---|
rep init |
Creates config and installs rj/ro shell shortcuts |
rep list |
Shows all repos with path, description, tags, and whether it exists on disk |
rep list --tag work |
Filters repos by tag |
rep jump |
Fuzzy-select a repo, prints the path (used by rj shell function) |
rep open |
Fuzzy-select a repo, opens it in your editor |
rep open my-api |
Opens a repo directly by alias |
rep open --editor code |
Override the default editor |
rep add ~/dev/foo |
Register a local repo (auto-detects git remote, suggests alias) |
rep add https://github.com/org/repo.git |
Clone a repo and register it (asks where to place it) |
rep remove my-api |
Unregister a repo (does not delete files) |
Shell integration
rep init automatically installs these shortcuts into your shell profile:
| Shortcut | What it does |
|---|---|
rj |
Fuzzy-select a repo and cd into it |
ro |
Fuzzy-select a repo and open it in your editor |
Supports PowerShell, Bash, Zsh. Detected and installed during rep init.
You can also set them up manually:
PowerShell:
function rj { Set-Location (rep jump) }
function ro { rep open }
Bash / Zsh:
Config
Lives at ~/.reportal/config.toml:
[]
= "cursor"
= "~/dev"
[]
= "~/dev/my-project/api"
= "Backend API"
= ["work", "backend"]
= "git@github.com:org/api.git"
[]
= "~/dev/personal/site"
= "Personal website"
= ["personal", "frontend"]
Roadmap
- Config parsing
-
init,list,jump,open,add,remove - Shell integration auto-install (
rj,ro) - Clone from URL with sibling/child placement
- Auto-detect git remote on
add - Colored output with themed fuzzy finder
-
repshort alias -
status— git status across all repos -
sync— pull latest across repos -
dashboard— rich overview with branches, dirty state, last commit -
clone --all— clone missing repos from config (machine sync) - Shell completions
- Publish to crates.io
Contributing
PRs welcome. Open an issue first for anything bigger than a typo fix.