 
AI-Powered GitHub Analytics Platform
en-git transforms your GitHub data into actionable insights with advanced analytics, gamification, AI-powered career advice, and beautiful visualizations.
Get your personalized developer badge — show off your skills, top languages, and activity with a clean, shareable card.
 Engage smarter, grow faster — let data guide your next project and highlight what matters most.
Engage smarter, grow faster — let data guide your next project and highlight what matters most.
 
Compare with peers — analyze profiles side-by-side to track your growth and benchmark your progress.
 
- Language Analysis - Top 3 programming languages with usage percentages
- Repository Insights - Most starred & active repositories
- Contribution Calendar - Interactive heatmap of your coding activity
- Activity Patterns - Weekly & hourly contribution charts
- Coding Profile - Early bird vs night coder detection
- Topics & Tags - Popular technologies in your projects
- Domain Detection - Skill classification (Web Dev, AI/ML, DevOps, Mobile, etc.)
- Achievement Badges - Unlock badges based on your activity
- Polyglot (Bronze/Silver/Gold)
- Night Owl / 🐦 Early Bird
- Open Source Hero
- Consistent Coder
- Star Collector
- Early Adopter
- Collaborator
- Issue Hunter
 
- Skill Radar Chart - 6-dimensional visualization of technical expertise
- Tech Stack Badges - Auto-generated shields.io badges for your README
- NFT Badges - Mint milestone achievements as NFTs
- Smart Contract Verification - API to verify on-chain ownership
- Portable Credentials - Linked to your wallet address
- Career Insights - Personalized career advice from Google Gemini AI
- 6-Month Learning Roadmap - Customized skill development plan
- Strengths & Growth Areas - Identify what you excel at and where to improve
- Project Recommendations - AI-suggested projects to build next
- Career Paths - Job titles and specializations matched to your profile
- Share Cards - Generate beautiful 1200x630 images for social media
- Bookmarks - Save favorite profiles for quick access
- Share Cards - Generate beautiful 1200x630 images for social media
- Bookmarks - Save favorite profiles for quick access
- Search History - Track recently viewed profiles
- PDF Export - Download comprehensive reports
- One-Click Analysis - Analyze profiles & repos directly from GitHub
- Custom Themes - Personalize GitHub with custom colors (primary, accent, background, text)
 
 
- Custom Fonts - Choose your preferred code font (Fira Code, JetBrains Mono, etc.)
- Keyboard Shortcuts - Navigate faster (Ctrl+K search, Ctrl+Shift+N new repo, Ctrl+Shift+I issues)
- Repository Bookmarks - Save and organize favorite repos
- Visual Enhancements - Enhanced contribution graphs, repo cards, and profile pages
- Settings Page - Full control with tabs for themes, editor, shortcuts, and bookmarks
Frontend:
- React 19 + Vite
- React Router
- Shadcn/UI + Radix UI
- Tailwind CSS
- Recharts (for analytics charts)
- Axios
- Socket.io-client
Backend:
- Node.js + Express
- MongoDB + Mongoose
- Socket.io
- JWT + bcrypt
- Razorpay
- Cloudinary
- Ethers.js
- Axios + Cheerio (GitHub trending scrape)
- Node-Cache (in-memory cache for GitHub API)
- Node.js 18+
- MongoDB running (local or Atlas)
- GitHub personal access token (optional, for higher rate limits)
git clone <your-repo-url>
cd GithubServer:
cd server
npm installClient:
cd client
npm installCreate server/.env:
PORT=8000
CORS_ORIGIN=http://localhost:5173
MONGODB_URI=mongodb://localhost:27017/need_for_code
JWT_SECRET=your_jwt_secret
REFRESH_TOKEN_SECRET=your_refresh_secret
ACCESS_TOKEN_EXPIRY=1d
REFRESH_TOKEN_EXPIRY=7d
# Optional: GitHub token for higher rate limits (5000/hr vs 60/hr)
GITHUB_TOKEN=ghp_YourPersonalAccessToken
# Blockchain (optional)
BLOCKCHAIN_RPC_URL=https://sepolia.infura.io/v3/...
WALLET_PRIVATE_KEY=0xYourMinterPrivateKey
BADGE_CONTRACT_ADDRESS=0xYourBadgeContract
BADGE_CHAIN_ID=11155111
Create client/.env:
VITE_API_BASE_URL=http://localhost:8000/api/v1Option A: Use the batch script (Windows)
start_dev.batOption B: Run manually
Terminal 1 (server):
cd server
npm run devTerminal 2 (client):
cd client
npm run dev- Client: http://localhost:5173
- Server: http://localhost:8000/api/v1/healthcheck
- GitHub Insights: http://localhost:5173/github-insights
- Navigate to /github-insightsin the app
- Enter any public GitHub username (e.g., octocat,torvalds,gaearon)
- Click Analyze
- View:
- Profile Summary: avatar, bio, followers, domain classification
- Top Languages: pie chart with percentages
- Most Starred/Active Repos: ranked lists
- Popular Topics: tag cloud
- Commit Timing: hourly bar chart + profile badge (early-bird / night-coder)
- Weekly Activity: recent events by week
- Recommendations:
- Trending projects that match your skills
- Personal project ideas based on your top topics
- Today's trending repos
 
 
Tips:
- Add a GITHUB_TOKENto.envfor higher API rate limits (5000/hr)
- Without a token, public API allows 60 requests/hour
- Results are cached for 5 minutes server-side to reduce API calls
- 
Build the extension: cd client npm run build:extension
- 
Load in Chrome: - Open chrome://extensions/
- Enable Developer mode (top-right toggle)
- Click Load unpacked
- Select the chrome-extensionfolder
- Extension loaded! 🎉
 
- Open 
- 
Use it: - Click extension icon to analyze any GitHub username
- Visit GitHub profiles → See "Analyze with en-git" button
- Visit repos → See "Deep Dive" button
- Right-click GitHub links → "Analyze with en-git"
 
📖 Full documentation: See chrome-extension/SETUP.md
Github/
├── client/            # React frontend
│   ├── src/
│   │   ├── components/   # UI components (shadcn)
│   │   ├── pages/        # Routes (Home, Dashboard, GitHubInsights, etc.)
│   │   ├── lib/          # axios, github, auth, utils
│   │   └── ...
│   └── package.json
├── server/            # Express backend
│   ├── src/
│   │   ├── controllers/  # Route handlers
│   │   ├── routes/       # Express routes
│   │   ├── models/       # Mongoose schemas
│   │   ├── services/     # External APIs (github.service.js)
│   │   ├── utils/        # Helpers (githubAnalytics, skillDomain, etc.)
│   │   └── app.js
│   └── package.json
├── README.md
└── start_dev.bat