A terminal UI project manager with git integration, built with Bun, SolidJS, and @opentui/solid.
- Project List - View all your projects sorted by last accessed time
- Git Status - See branch, working tree state (clean/dirty), and remote sync status
- Quick Search - Filter projects by name or path
- File Explorer - Browse directories to add new projects
- Editor Integration - Open projects in your
$EDITOR - Lazygit Integration - Quick access to git operations
- Coding Agent Integration - Launch AI coding agents (Claude Code, Codex, etc.) in project directories
- Terminal Integration - Spawn a shell directly in any project directory
git clone <repo-url>
cd devhub
bun install
bun compile
sudo cp dist/devhub /usr/local/bin/bun install
bun devnix run github:Tammo0987/devhub # try it
nix shell github:Tammo0987/devhub # or add to shellAdd to your flake inputs:
inputs.devhub.url = "github:Tammo0987/devhub";Then add devhub.packages.${pkgs.system}.default to environment.systemPackages (NixOS) or home.packages (Home Manager).
This project includes a devenv configuration that sets up all required dependencies.
With direnv:
direnv allowWithout direnv:
devenv shelldevhubdevhub [path] # Open TUI with projects from path (default: current dir)
devhub help # Show help
devhub -v # Show version| Key | Action |
|---|---|
j / k or ↑ / ↓ |
Navigate list |
Enter |
Open project in $EDITOR |
/ |
Search/filter projects |
b |
Browse (opens file explorer) |
g |
Open lazygit |
c |
Open coding agent ($DEVHUB_AGENT) |
t |
Open terminal ($SHELL) |
r |
Refresh git status |
q |
Quit |
| Key | Action |
|---|---|
j / k or ↑ / ↓ |
Navigate |
l / → |
Enter directory |
h / ← |
Go to parent |
Enter |
Select as root |
Esc |
Cancel |
Project metadata is stored at <rootDir>/.devhub/config.json.
| Variable | Description |
|---|---|
DEVHUB_ROOT |
Default root directory for projects |
EDITOR |
Editor to open projects with (required for Enter key) |
DEVHUB_AGENT |
Coding agent command (e.g., claude or codex) |
SHELL |
Shell for terminal spawning (defaults to /bin/sh) |
- Runtime: Bun
- Language: TypeScript
- TUI Framework: @opentui/solid
- UI Library: SolidJS
- Git: simple-git
- Theme: Catppuccin Mocha
