Automated GitHub metrics tracking with a beautiful dashboard.
Ever wanted to track your GitHub journey over time? Whether you're building your developer portfolio, showcasing your growth to employers, or just curious about how your projects are performing, this template makes it incredibly easy to visualize your GitHub statistics.
Unlike static stats badges that only show current numbers, this template provides:
- Historical trends - See how your stars, followers, and views grow over time
- Interactive charts - Beautiful, responsive visualizations powered by Chart.js
- Zero maintenance - Once set up, it updates automatically every day
- No coding required - Just use this template, add one secret, and you're done
It works for any GitHub user regardless of account size - from hobbyist with a few repos to open-source maintainer with hundreds.
- Use this template → Click the green "Use this template" button above
- Name your repository → Must be
<your-username>/<your-username>for profile README, or any name for standalone metrics - Create a Personal Access Token:
- Go to GitHub Settings → Developer Settings → Personal Access Tokens → Tokens (classic)
- Click "Generate new token (classic)"
- Give it a name like "Metrics Token"
- Select scopes:
repo(full),read:user - Generate and copy the token
- Add the secret:
- Go to your new repository → Settings → Secrets and variables → Actions
- Click "New repository secret"
- Name:
METRICS_TOKEN - Value: paste your token
- Enable GitHub Pages:
- Go to Settings → Pages
- Source: "Deploy from a branch"
- Branch:
main, folder:/docs - Save
- Run the workflow:
- Go to Actions → "Update GitHub Metrics"
- Click "Run workflow"
- Wait ~2 minutes for completion
Your dashboard will be live at: https://<your-username>.github.io/<repo-name>/
| Metric | Count |
|---|---|
| Repositories | 0 |
| Stars | 0 |
| Forks | 0 |
| Watchers | 0 |
| Followers | 0 |
| Views (14 days) | 0 |
Last updated: 2026-01-18 00:21 UTC
| Repository | Views |
|---|
- 📊 Interactive Dashboard - Beautiful Chart.js visualizations
- 🔄 Daily Updates - Automatic metrics collection via GitHub Actions
- 📈 Historical Tracking - 365 days of rolling data
- 📱 Responsive Design - Works on desktop and mobile
- 🔒 Private Data Safe - Only collects public metrics
- ⚡ Zero Maintenance - Set it and forget it
- GitHub Actions runs daily at midnight UTC
- Collects metrics via GitHub's GraphQL and REST APIs
- Updates this README with latest numbers
- Appends data to
metrics-history.json - Dashboard reads JSON and renders charts
Edit .github/workflows/update-metrics.yml:
on:
schedule:
- cron: "0 */6 * * *" # Every 6 hours instead of dailyEdit docs/index.html and change the colors object:
const colors = {
repos: '#3b82f6', // Blue
stars: '#f59e0b', // Amber
forks: '#10b981', // Green
followers: '#8b5cf6', // Purple
watchers: '#ec4899', // Pink
views: '#06b6d4' // Cyan
};| Scope | Why Needed |
|---|---|
repo |
Access traffic data (views) for your repositories |
read:user |
Read your profile information (followers) |
Workflow fails with 401 error:
- Your
METRICS_TOKENsecret may be expired or invalid - Generate a new token and update the secret
Dashboard shows "No data":
- Wait for the first workflow run to complete
- Check Actions tab for any errors
Views always show 0:
- Traffic data requires
reposcope on your token - Traffic data is only available for repos you own
Built with:
MIT License - feel free to use and modify!

