Get your GitHub developer score out of 1000 with a savage AI roast
๐ Live Demo โข Made by- https://x.com/md_kasif_uddin ๐ Documentation โข ๐ Report Bug โข โจ Request Feature
GitRoasted is a free, open-source developer tool that analyzes your GitHub profile and gives you:
- ๐ Comprehensive Score - Out of 1000 based on 8 key metrics
- ๐ฅ AI-Generated Roast - Savage but funny feedback on your coding habits
- ๐ Global Leaderboard - Compete with developers worldwide
- ๐ก Improvement Tips - Actionable advice to boost your score
- โ๏ธ Profile Comparison - Battle other developers head-to-head
- ๐ค Shareable Cards - Beautiful cards for social media
"GitRoasted turned my GitHub profile analysis into an addictive game!" - Developer
- Visit gitroasted.netlify.app
- Enter any GitHub username
- Get instant analysis + roast!
Features in Action:
- ๐ฏ Real-time GitHub profile analysis
- ๐ค AI-powered personalized roasts
- ๐ Interactive score breakdowns
- ๐ Live leaderboard rankings
- ๐จ Customizable share cards
- โ GitHub Profile Analysis - Analyzes 100+ data points from GitHub API
- โ 8-Metric Scoring System - Comprehensive evaluation (Impact, Consistency, Quality, Community, Diversity, Experience, Activity, Bonuses)
- โ AI-Powered Roasts - Personalized 2-3 line roasts that are savage yet appreciative
- โ Global Leaderboard - Real-time ranking with pagination and search
- โ Profile Comparison - Head-to-head battles with detailed breakdowns
- โ Quick Wins - Personalized improvement roadmap with actionable tips
- โ Shareable Cards - Generate cards for Instagram, Twitter, or 3:4 format
- โ Dark/Light Themes - Seamless theme switching with system preference detection
- โ Fully Responsive - Optimized for mobile, tablet, and desktop
- โ PWA Support - Installable progressive web app with offline support
- ๐ฏ Category Breakdown - Detailed scoring across all 8 categories
- ๐ Trend Analysis - Track score improvements over time
- ๐บ๏ธ Improvement Roadmap - 3-phase plan to boost your score
- ๐ก Project Recommendations - Specific project ideas based on your gaps
- ๐ Radar Chart Visualization - Visual comparison of your strengths
- ๐ Real-time Updates - Live leaderboard with Firebase sync
- ๐จ Card Customization - Multiple themes and layouts for sharing
- ๐ Multi-language Support - Support for 10+ programming languages
- Framework: Next.js 14 (App Router, TypeScript)
- Styling: Tailwind CSS + Custom animations
- UI Components: Custom components with glass-morphism design
- Charts: Recharts for data visualization
- Icons: React Icons
- State Management: React Context + Hooks
- Database: Firebase Firestore
- Authentication: None (public access)
- API: GitHub REST API v3
- Caching: localStorage + sessionStorage for performance
- Hosting: Netlify
- CDN: Netlify Edge Network
- SSL: Auto-managed by Netlify
- Analytics: Google Analytics 4
- Language: TypeScript 5.0
- Package Manager: npm
- Linting: ESLint + Prettier
- Version Control: Git + GitHub
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ Client Browser โ
โ (Next.js 14 App + React Components + Tailwind CSS) โ
โโโโโโโโโโโโโโโโโโฌโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ
โโ GitHub API (REST v3)
โ โโ User data, repos, contributions
โ
โโ Firebase Firestore
โ โโ Leaderboard storage
โ โโ User scores cache
โ
โโ localStorage
โโ Client-side caching
โโ User preferences
Data Flow:
1. User enters GitHub username
2. Fetch data from GitHub API (parallel requests)
3. Calculate score using 8-metric algorithm
4. Generate AI roast based on profile data
5. Store result in Firestore (if new/improved score)
6. Display results with animations
7. Cache in localStorage for 24h
GitRoasted evaluates profiles across 8 key dimensions (total 1000 points):
| Category | Points | Description |
|---|---|---|
| ๐ซ Impact | 250 | Stars received, repo quality, fork impact |
| ๐ฅ Consistency | 200 | Contribution frequency, streaks, commitment |
| โจ Quality | 150 | Code reviews, documentation, testing |
| ๐ฅ Community | 150 | Followers, collaboration, social engagement |
| ๐ Diversity | 100 | Programming languages, tech stack variety |
| ๐ Experience | 75 | Account age, profile completeness |
| โก Activity | 50 | Recent contributions (last 30-90 days) |
| ๐ Bonus | 25 | Exceptional achievements (viral repos, year streaks) |
- ๐ Elite (900-1000): Top 1% - GitHub Legend
- โญ Exceptional (800-899): Top 5% - Star Developer
- ๐ช Excellent (700-799): Top 10% - Highly Skilled
- ๐ Above Average (600-699): Top 25% - Solid Developer
- ๐ Average (400-599): Top 50% - Keep Building
- ๐ฑ Developing (0-399): Room for Growth
Before you begin, ensure you have:
- Node.js 18.0+ installed (Download)
- npm 9.0+ (comes with Node.js)
- Git installed (Download)
- Firebase account (Sign up free)
- GitHub account (for testing)
-
Clone the repository
git clone https://github.com/MdKasif0/GitRoasted.git cd GitRoasted -
Install dependencies
npm install
-
Set up environment variables
Create a
.env.localfile in the root directory:# Firebase Configuration NEXT_PUBLIC_FIREBASE_API_KEY=your_api_key NEXT_PUBLIC_FIREBASE_AUTH_DOMAIN=your_auth_domain NEXT_PUBLIC_FIREBASE_PROJECT_ID=your_project_id NEXT_PUBLIC_FIREBASE_STORAGE_BUCKET=your_storage_bucket NEXT_PUBLIC_FIREBASE_MESSAGING_SENDER_ID=your_sender_id NEXT_PUBLIC_FIREBASE_APP_ID=your_app_id # GitHub API (Optional - for higher rate limits) GITHUB_TOKEN=your_github_personal_access_token # Analytics (Optional) NEXT_PUBLIC_GA_MEASUREMENT_ID=your_ga_id
-
Set up Firebase Firestore
a. Create a new Firebase project
b. Enable Firestore Database
c. Create a collection namedleaderboard
d. Set up Firestore rules:rules_version = '2'; service cloud.firestore { match /databases/{database}/documents { match /leaderboard/{document} { allow read: if true; allow write: if true; } } }
e. Create composite index:
- Collection:
leaderboard - Fields:
score(Descending)
- Collection:
-
Run the development server
npm run dev
-
Open your browser
Navigate to http://localhost:3000
# Build the application
npm run build
# Start production server
npm start
# Or build and export static files
npm run build && npm run export-
Connect your repository
- Sign up at Netlify
- Click "New site from Git"
- Connect your GitHub repository
-
Configure build settings
Build command: npm run build Publish directory: .next -
Add environment variables
- Go to Site settings โ Environment variables
- Add all variables from
.env.local
-
Deploy
- Click "Deploy site"
- Your site will be live at
yoursite.netlify.app
# Install Vercel CLI
npm i -g vercel
# Deploy
vercel
# Follow the prompts to deploy// Visit the homepage
https://gitroasted.netlify.app
// Enter any GitHub username
"torvalds", "gaearon", "your-username"
// Get instant results!# Fetch user score
GET /api/score?username=torvalds
# Response
{
"username": "torvalds",
"score": 892,
"breakdown": {
"impact": 230,
"consistency": 180,
"quality": 145,
...
},
"roast": "Your commit history..."
}Add your GitRoasted score to your GitHub README:
[](https://gitroasted.netlify.app/profile/yourusername)Add to .github/workflows/update-score.yml:
name: Update GitRoasted Score
on:
schedule:
- cron: '0 0 * * 0' # Weekly
workflow_dispatch:
jobs:
update-score:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Update Score
run: |
curl -X POST https://gitroasted.netlify.app/api/refresh/${{ github.repository_owner }}We love contributions! GitRoasted is open-source and welcomes contributions from developers of all skill levels.
-
Fork the repository
Click the "Fork" button at the top right of this page
-
Clone your fork
git clone https://github.com/YOUR_USERNAME/GitRoasted.git cd GitRoasted -
Create a feature branch
git checkout -b feature/amazing-feature
-
Make your changes
Follow our coding standards
-
Commit your changes
git commit -m "Add: amazing new feature"Use conventional commits:
feat:- New featurefix:- Bug fixdocs:- Documentationstyle:- Formattingrefactor:- Code restructuringtest:- Adding testschore:- Maintenance
-
Push to your fork
git push origin feature/amazing-feature
-
Open a Pull Request
Go to the original repository and click "New Pull Request"
- Use TypeScript for type safety
- Follow ESLint rules (run
npm run lint) - Write meaningful commit messages
- Add comments for complex logic
- Update documentation for new features
- Write tests for new functionality (when applicable)
- ๐ Bug fixes - Check open issues
- โจ New features - See roadmap
- ๐ Documentation - Improve guides and examples
- ๐ Translations - Add support for more languages
- ๐จ Design - UI/UX improvements
- โก Performance - Optimization opportunities
- Core scoring algorithm (8 metrics)
- AI-powered roast generation
- Global leaderboard with pagination
- Profile comparison feature
- Quick wins improvement tips
- Shareable social cards
- PWA support
- Dark/light themes
- Mobile responsive design
- Team/Organization leaderboards
- Historical score tracking (graph over time)
- Achievement badge system
- API rate limit optimization
- Native mobile apps (iOS & Android)
- VS Code extension
- GitHub Action for README badges
- Email notifications for score changes
- Premium features (advanced analytics)
- Integration with LinkedIn
- Multi-user comparison (up to 5 users)
- Custom scoring weights
- Private leaderboards
- Internationalization (i18n)
Vote on features: GitHub Discussions
Found a bug? Have an idea? We'd love to hear from you!
Bug Report: Open an issue
Feature Request: Open an issue
General Discussion: GitHub Discussions
Join our community of developers!
- ๐ฌ Discord: Join our server
- ๐ฆ Twitter: @gitroasted
- ๐ง Email: [email protected]
- ๐ฑ Instagram: @gitroasted
Q: Is GitRoasted free?
A: Yes! GitRoasted is 100% free and open-source.
Q: How often does my score update?
A: Scores are cached for 24 hours. You can force refresh by searching again.
Q: Why is my score lower than expected?
A: Check the Quick Wins page for improvement tips!
Q: Can I use this for my company?
A: Absolutely! It's open-source under MIT license.
Q: Does GitRoasted collect my data?
A: We only store your public GitHub data (username, avatar, score). See Privacy Policy.
More questions? Check our full FAQ
- Md Kasif - Creator & Maintainer
- GitHub - For the incredible API
- Next.js Team - For the amazing framework
- Vercel - For inspiration
- All Contributors - For making this project better
- GitHub's contribution graph
- GitHub Profile Summary Cards
- Developer communities on Twitter
- Icons from React Icons
- Illustrations from Undraw
- Fonts from Google Fonts
This project is licensed under the MIT License - see the LICENSE file for details.
MIT License
Copyright (c) 2024 GitRoasted
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
What this means:
- โ Commercial use allowed
- โ Modification allowed
- โ Distribution allowed
- โ Private use allowed
โ ๏ธ No warranty providedโ ๏ธ No liability accepted
GitRoasted only uses publicly available GitHub data:
- โ Public profile information
- โ Public repositories
- โ Public contributions
- โ No private data accessed
- โ No authentication required
- โ No personal data collected
We respect the GitHub Terms of Service and API Terms.
- GitHub Profile README Generator
- GitHub Stats Visualization
- GitHub Profile Trophy
- GitHub Activity Graph
If you find GitRoasted useful, consider supporting it:
- โญ Star this repo - It helps us grow!
- ๐ฆ Share on Twitter - Spread the word
- ๐ Sponsor: Buy me a coffee
- ๐ Report bugs - Help us improve
- ๐ก Suggest features - Shape the future
ยฉ 2024 GitRoasted. All rights reserved.