Generic Dashboards is a powerful and configurable analytics engine for GitHub Projects (Projects v2). It generates burndown charts and visual analytics tailored to sprint tracking, iteration planning, and velocity monitoring.
- 📉 Burndown Chart Generator
- Tracks ideal vs. actual story points.
- Scope creep detection with dynamic visualization.
- 🧠 Automatic Sprint Detection
- Reads
Sprintiterations from GitHub Projects v2.
- Reads
- 🎯 API Endpoints
/api/burndownchart: JSON chart data/api/burndownchart_image: PNG image/api/burndownchart_image_detailed: Detailed annotated PNG/api/burndownchart_image_bars: Open vs Closed SP bar chart/api/sprints: Sprint schedule info
- 📖 Swagger Docs: Built-in Flasgger UI at
/apidocs - 🖥️ Optional Web UI at
/ui
git clone https://github.com/cosminmemetea/dashboards.git
cd dashboardspython3 -m venv env
source env/bin/activate # macOS/Linux
# or
env\Scripts\activate # Windowspip install -r requirements.txtpython app.pyVisit:
- App UI: http://127.0.0.1:5000/ui
- API Docs: http://127.0.0.1:5000/apidocs
docker build -t dashboards-app . docker run -p 80:80 dashboards-app http://localhost/ui
curl -X POST http://localhost:5000/api/config \
-H "Content-Type: application/json" \
-d @user_config.jsoncurl http://localhost:5000/api/burndownchart_image > chart.pngmacOS
pyinstaller --name Dashboards \
--windowed \
--add-data "LICENSE.md:." \
--add-data "README.md:." \
--hidden-import matplotlib \
--hidden-import flasgger \
--onefile app.pyWindows
pyinstaller --name Dashboards ^
--windowed ^
--add-data "LICENSE.md;." ^
--add-data "README.md;." ^
--hidden-import matplotlib ^
--hidden-import flasgger ^
--onefile app.py- Milestones: Define them for sprints/releases.
- Issues: Add
[Task]prefix and a numericStory Pointslabel. - GitHub Projects v2:
- Add
Story Points(number field). - Add
Sprint(iteration field).
- Add
- Link Issues to the Project.
See full instructions in the original documentation above for detailed setup.
MIT – Permissive open-source license allowing free use, modification, and distribution for any purpose, with minimal restrictions.
Contributions make this repo better! Whether fixing bugs, adding features, or improving docs, you're welcome. Let's have fun!

