844eb117fb60d2ab0213f4dd1cb6ed03b8d5f7db
Some checks failed
CI / test (push) Has been cancelled
DevDash CLI
A terminal-based developer dashboard providing real-time visibility into git status, CI/CD pipelines, open PRs, and assigned issues. Built with Python and Textual for a modern, responsive TUI experience.
Features
- Git Repository Status - Display current branch, commit hash, uncommitted changes summary, and remote sync status
- CI/CD Pipeline Monitoring - Show running workflows, their status (pending/running/success/failure), duration, and recent runs
- Pull Request Tracker - List open PRs with status, checks, authors, and assignees. Show draft vs ready status
- Issue Overview - Display assigned issues with status, labels, and priority indicators
- Auto-Refresh - Automatically refresh data at configurable intervals (default 30s)
- Multi-Repository Support - Configure and switch between multiple repositories with saved settings
- GitHub Integration - Full API integration with GitHub for repos, PRs, issues, and workflows
- GitLab Integration - Full API integration with GitLab for repos, MRs, issues, and pipelines
- Keyboard Navigation - Full keyboard control for navigation, refresh, switching views, and actions
- Configuration Management - CLI-based configuration for API tokens, default repo, refresh interval
Installation
Prerequisites
- Python 3.10 or higher
- pip or poetry
Install from Source
git clone https://7000pct.gitea.bloupla.net/7000pctAUTO/devdash-cli.git
cd devdash-cli
pip install -e .
Install from PyPI
pip install devdash-cli
Configuration
Environment Variables
Create a .env file or set environment variables:
export GITHUB_TOKEN="your_github_token"
export GITLAB_TOKEN="your_gitlab_token"
export DEVDASH_REPO="owner/repo"
export DEVDASH_REFRESH=30
export DEVDASH_THEME=dark
CLI Configuration
devdash add-repo owner/repo --provider github
devdash add-repo owner/repo --provider gitlab
devdash config
devdash doctor
Usage
devdash # Launch with default repository
devdash launch owner/other-repo # Launch with specific repository
devdash launch --refresh 60 # Set custom refresh interval
devdash launch --theme light # Use light theme
Keyboard Shortcuts
| Key | Action |
|---|---|
q |
Quit |
r |
Refresh data |
j/k |
Move up/down |
h/l |
Move left/right |
1-4 |
Switch panels |
Esc |
Quit |
API Setup
GitHub
- Create a Personal Access Token at https://github.com/settings/tokens
- Select scopes:
repo,read:org - Set
GITHUB_TOKENenvironment variable
GitLab
- Create a Personal Access Token at https://gitlab.com/-/user_settings/personal_access_tokens
- Select scopes:
api,read_api - Set
GITLAB_TOKENenvironment variable
Development
python -m venv venv
source venv/bin/activate
pip install -e ".[dev]"
pytest tests/ -v
pytest tests/ --cov=src --cov-report=term-missing
ruff check src/
License
MIT License