This formula rewards a mix of code contributions, collaboration, and repository activity.
Evaluation matrix
Adjust each slider to reflect your self-assessment or teacher's assessment for each skill (1 = lowest, 5 = highest).
Analytics Help
What is this dashboard? Making the portfolio easier to use with clickable contributions, better stats, and simple access to your profile so coders can show their work.
This dashboard provides real-time analytics and grade predictions based on your GitHub activity. It uses a secure backend API to fetch your contributions, pull requests, issues, and more, then visualizes them for both students and admins.
Why use it?
- Get accurate, up-to-date insights into your coding activity.
- Predict your grade based on real engagement.
- Admins can review and compare user contributions.
How It Works
All API endpoints are JWT-secured using @token_required.
Data is fetched from GitHub using both REST and GraphQL APIs for maximum detail.
API Endpoints
User Endpoints (require login):
GET /api/analytics/github/user — Your GitHub profile info
GET /api/analytics/github/user/profile_links — Quick links to your GitHub profile and repos
GET /api/analytics/github/user/commits — Commit stats (count, additions, deletions, details)
GET /api/analytics/github/user/prs — Pull request stats
GET /api/analytics/github/user/issues — Issue stats
GET /api/analytics/github/user/issue_comments — Your comments on issues
GET /api/analytics/github/user/received_issue_comments — Comments received on your issues
Admin Endpoints:
GET /api/analytics/commits/<uid> — Any user's commit stats (admin only)
GET /api/analytics/issues/<uid> — Any user's issue stats (admin only)
Organization Endpoints:
GET /api/analytics/github/org/<org_name>/users — List users in a GitHub org
GET /api/analytics/github/org/<org_name>/repos — List repos in a GitHub org
How the Backend Works
Authentication:
All endpoints require a valid JWT token. Admin endpoints check your user role.
Date Ranges:
If you don't specify a date range, the API automatically uses trimester logic (June–Nov, Nov–Mar, Apr–June).
GitHub Data:
Uses both REST and GraphQL to get detailed commit, PR, and issue data, including additions/deletions and comment counts.
Error Handling:
All endpoints return clear error messages if something goes wrong (e.g., invalid UID, GitHub API issues, or permission errors).
Grade Prediction Logic
The dashboard predicts your grade using two models: