This tool estimates your GitHub-based grade using two methods:
Basic Grade: Based on total commits.
Smart Grade: Includes commits, code changes, PRs, issues, followers, and more.
Metric
Included In
Commits
Basic & Smart
Lines Changed
Smart
Pull Requests
Smart
Issues
Smart
Repos / Gists
Smart
Followers / Following
Smart
Grade Scale: A (90%), B (80%), C (70%), F (55%) — based on engagement.
Admin: Search User Commits
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: