A real-time dashboard for monitoring all GitHub Projects across an organization. Displays project health metrics, resource allocation, epic progress, and issue violations.
- Organization Overview: View all projects at a glance with key metrics (active items, epics, violations, team members, open PRs)
- Project Details: Drill down into individual project data
- Health Check: Track missing assignees, statuses, dates, and work hours
- Resource Load: Monitor team member workload distribution with clickable drill-down to view individual tasks
- Epic Roadmap: View open epics and their progress
- Pull Request Tracking: Monitor open PRs per project with age indicators and late PR alerts (>24 hours)
- Auto-Refresh: Dashboard updates every 5 minutes automatically
- Auto-Load on Start: Reports are automatically loaded when the server starts
- Python 3.6+
- GitHub CLI (
gh) - authenticated with your account jqfor JSON processing
-
Configure the dashboard:
cp config.sample.json config.json # Edit config.json with your GitHub token -
Start the dashboard:
./start.sh
Reports are automatically loaded on server start.
-
Open in browser: http://localhost:8080
Edit config.json:
{
"github": {
"owner": "aibos-dev",
"token": "ghp_YOUR_GITHUB_TOKEN"
},
"dashboard": {
"refresh_interval_minutes": 5,
"port": 8080
}
}Your token needs these scopes:
read:project- Read project datarepo- Access repository issues
org-sitrep-dashboard/
├── config.json # Configuration (not in git)
├── config.sample.json # Config template
├── start.sh # Main startup script
├── scripts/
│ ├── fetch_all_projects.sh # Fetch all org projects
│ └── generate_project_report.sh # Generate single project report
├── dashboard/
│ ├── index.html # Dashboard UI
│ ├── styles.css # Styling
│ ├── app.js # Frontend logic
│ └── server.py # HTTP server & API
└── reports/ # Generated reports (not in git)
GET /api/data- Get all projects dataGET /api/projects- Get projects listPOST /api/regenerate- Regenerate all reports