feat:Add Individual User Merge Request Dashboard to Productivity View
What does this MR do?
This merge request adds an Individual User Merge Request Dashboard to the Team-wise Productivity view, enabling detailed visibility into each contributor’s merge request activity along with existing productivity metrics.
It introduces a new capability to track and analyze individual merge request performance, improving transparency and evaluation at both team and user levels.
Motivation / Use Case
Currently, the productivity dashboard mainly focuses on team-level metrics, which makes it difficult to assess individual contributions, especially merge request activity.
This feature is useful because:
- Helps mentors and project admins evaluate individual performance.
- Enables contributors to track their own progress.
- Improves accountability and transparency in collaborative development.
This enhancement makes productivity analysis more granular, actionable, and fair.
Implementation Notes
- Extended the productivity mode to fetch and display individual user merge request data.
- Enhanced UI components to render user-specific MR statistics clearly.
- Updated backend GitLab API handling to support efficient MR data retrieval.
- Designed changes to be fully backward compatible — no breaking changes introduced.
Key files updated:
app.pymodes/productivity_mode.pygitlab_utils/merge_requests.py
How to Test
-
Pull this branch:
git checkout feature-team-productivity-dashboard
git pull origin feature-team-productivity-dashboard -
Activate virtual environment:
source venv/bin/activate
-
Run the Streamlit app:
streamlit run app.py
-
In the UI:
- Select Team-wise Productivity Leaderboard
- Choose any team and member
- Confirm:
- Individual MR statistics are visible
- Dashboard loads without errors
Checklist
- Feature implemented and tested locally
-
Code follows existing project style -
No breaking changes introduced -
Dashboard works as intended -
Improves usability and insights
-