A terminal dashboard for Jenkins
jdash is a terminal UI for Jenkins that brings your CI/CD workflow into the command line. Inspired by lazygit and lazydocker, it provides a fast, keyboard-driven interface for managing Jenkins jobs without leaving your terminal.
Built with Go and Bubbletea, jdash is faster than the web UI and keeps you in your workflow.
- 🌳 Hierarchical job tree — Navigate your Jenkins jobs in a folder structure
- ⚡️ Real-time updates — Live build queue
- 📜 Console logs — Stream build logs directly in your terminal
- 🔍 Fuzzy search — Find jobs instantly as you type
- ⌨️ Vim-style navigation —
hjklmovement,/search, familiar keybindings - 🎯 Parameterized builds — Trigger builds with custom parameters
- 🎨 Clean interface — Multi-panel layout with color-coded status
git clone https://github.com/gorbach/jdash.git
cd jdash
go build -o jdashPrerequisites: Go 1.25 or higher
Run jdash for the first time:
./jdashYou'll be prompted to enter:
- Jenkins server URL
- Username
- API token (generate from Jenkins → User → Configure → API Token)
After successful authentication, your config is saved to ~/.jdash/config.json and you won't need to authenticate again.
Tab/Shift+Tab— Cycle through panels1/2/3— Jump to specific panelr— Refresh all data?— Show help overlayq/Ctrl+c— Quit
j/kor↑/↓— Navigate up/downh/lor←/→— Collapse/expand foldersSpace— Toggle folderEnter— View job detailsg/G— Jump to top/bottom/— Fuzzy searchEsc— Clear search
b— Build nowl— View console logsa— Abort running buildp— Build with parameters
Config location: ~/.jdash/config.json
{
"server": {
"url": "https://jenkins.example.com",
"username": "your-username",
"token": "your-api-token"
}
}To reset authentication, delete this file and restart jdash.
jdash is in active development. Currently implemented:
- ✅ Authentication screen
- ✅ Multi-panel layout
- ✅ Jobs list with hierarchical tree
- ✅ Vim-style navigation
- ✅ Fuzzy search
- ✅ Real-time build queue
- ✅ Job details view
- ✅ Console log viewer
- ✅ Build triggering (basic and parameterized)
- ✅ Status bar with server info
Planned features:
- 🔄 Build history view
- 🔄 Color schemes
jdash uses:
- Bubbletea — The Elm Architecture for terminal UIs
- Bubbles — TUI components (list, viewport, spinner, textinput)
- Lipgloss — Styling and layout
Contributions are welcome! Please check the issues.
To contribute:
- Fork the repository
- Create a feature branch
- Make your changes
- Submit a pull request
MIT License — see LICENSE for details.
Created by Oleksii Gorbach @gorbach
Built with ❤️ and Bubbletea