Initial upload: DevDash CLI with TUI dashboard

This commit is contained in:
2026-02-01 06:52:38 +00:00
parent b06d85e9a5
commit 7674e50de7

110
README.md
View File

@@ -1,3 +1,109 @@
# devdash-cli
# DevDash CLI
A terminal-based developer dashboard for git status, CI/CD pipelines, PRs, and issues
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
```bash
git clone https://7000pct.gitea.bloupla.net/7000pctAUTO/devdash-cli.git
cd devdash-cli
pip install -e .
```
### Install from PyPI
```bash
pip install devdash-cli
```
## Configuration
### Environment Variables
Create a `.env` file or set environment variables:
```bash
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
```bash
devdash add-repo owner/repo --provider github
devdash add-repo owner/repo --provider gitlab
devdash config
devdash doctor
```
## Usage
```bash
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
1. Create a Personal Access Token at https://github.com/settings/tokens
2. Select scopes: `repo`, `read:org`
3. Set `GITHUB_TOKEN` environment variable
### GitLab
1. Create a Personal Access Token at https://gitlab.com/-/user_settings/personal_access_tokens
2. Select scopes: `api`, `read_api`
3. Set `GITLAB_TOKEN` environment variable
## Development
```bash
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