Skip to content

jineshkumar134/en-git

 
 

Repository files navigation

Screenshot 2025-10-19 134029-Photoroom

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.

image Engage smarter, grow faster — let data guide your next project and highlight what matters most. image

Compare with peers — analyze profiles side-by-side to track your growth and benchmark your progress.

image

✨ Features

Core Analytics

  • 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.)

🎮 Gamification & Achievements

  • Achievement System - Track your GitHub journey with 15+ achievements! 🏆
    • 📊 View All Achievements Guide →
    • Follower milestones (Growing Community, Rising Star, Influencer)
    • Repository achievements (Productive, Prolific Creator)
    • Star milestones (Great Work, Popular Project, Century Club)
    • Fork achievements (Developers Love Your Code)
    • Special achievements (Steady Growth, Explosive Growth)
    • Three Tiers: Minor, Medium, and Major (Epic!) achievements
    • Beautiful color-coded cards with icons
  • Legacy Badges - Activity-based badges
    • 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
  • Progress Reports - Track growth over time with detailed achievement summaries

Blockchain-Verified Credentials

  • NFT Badges - Mint milestone achievements as NFTs
  • Smart Contract Verification - API to verify on-chain ownership
  • Portable Credentials - Linked to your wallet address

🤖 AI-Powered Features

  • 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

🎨 Social & Sharing

  • Share Cards - Generate beautiful 1200x630 images for social media
  • Bookmarks - Save favorite profiles for quick access

🎨 Social & Sharing

  • 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

🔌 Chrome Extension

  • One-Click Analysis - Analyze profiles & repos directly from GitHub

  • Custom Themes - Personalize GitHub with custom colors (primary, accent, background, text) image image

  • 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

🛠️ Tech Stack

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)

📦 Setup

Prerequisites

  • Node.js 18+
  • MongoDB running (local or Atlas)
  • GitHub personal access token (optional, for higher rate limits)
  • Vercel account (for deployment)

1. Clone the repo

git clone <your-repo-url>
cd en-git

2. Install dependencies

Server:

cd server
npm install

Client:

cd client
npm install

3. Environment Setup

Client Environment Variables:

cp client/.env.example client/.env.local
# Edit client/.env.local with your GitHub token

Server Environment Variables:

cp server/.env.example server/.env
# Edit server/.env with your configuration

4. Start Development Servers

# Start client (runs on http://localhost:5173)
cd client
npm run dev

# Start server (runs on http://localhost:3000)
cd server
npm run dev

5. Access the Application

🚀 Deployment

The project includes a complete CI/CD pipeline with Vercel deployment:

Automated Deployment Pipeline

  • Staging: Push to develop branch → auto-deploys to Vercel staging
  • Production: Push to main branch → auto-deploys to Vercel production
  • Testing: Automated testing, security scanning, and performance checks
  • Notifications: Slack notifications for deployment status

Manual Setup

See Vercel Deployment Setup Guide for detailed instructions on:

  • Setting up Vercel projects
  • Configuring GitHub secrets
  • Environment variables
  • Troubleshooting common issues

3. Configure environment variables

Create 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/v1

4. Run the application

Option A: Use the batch script (Windows)

start_dev.bat

Option B: Run manually

Terminal 1 (server):

cd server
npm run dev

Terminal 2 (client):

cd client
npm run dev

5. Open in browser


📊 GitHub Insights Usage

  1. Navigate to /github-insights in the app
  2. Enter any public GitHub username (e.g., octocat, torvalds, gaearon)
  3. Click Analyze
  4. View:
    • Profile Summary: avatar, bio, followers, domain classification
    • Top Languages: pie chart with percentages (small languages grouped into "Other")
    • 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

🏆 Track Your Progress

  1. Switch to the History tab to:
    • Capture Snapshots - Save your current GitHub stats
    • View Trends - See followers, repos, and stars over time
    • Unlock Achievements - Earn badges as you grow! 🎉
    • Progress Reports - Detailed summaries with all achievements
    • Compare Stats - "Then vs Now" comparisons

📖 Learn about all available achievements →

Tips:

  • Add a GITHUB_TOKEN to .env for 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
  • Capture snapshots weekly or monthly for best trend visualization
  • Check your Progress Report to see unlocked achievements!

🔌 Chrome Extension

Quick Setup

  1. Build the extension:

    cd client
    npm run build:extension
  2. Load in Chrome:

    • Open chrome://extensions/
    • Enable Developer mode (top-right toggle)
    • Click Load unpacked
    • Select the chrome-extension folder
    • Extension loaded! 🎉
  3. 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


🧩 Project Structure

Github/
├── README.md
├── ACHIEVEMENTS.md          # 🏆 Complete achievements guide
├── LICENSE
│
├── client/                  # React + Vite Frontend
│   ├── src/
│   │   ├── pages/          # GitHubInsights, Dashboard, Profile, etc.
│   │   ├── components/     # Charts, heatmaps, badges, AI insights
│   │   ├── lib/            # GitHub API, auth, utils
│   │   └── context/        # React contexts
│   └── package.json
│
├── server/                  # Node.js + Express Backend
│   ├── src/
│   │   ├── controllers/    # Route handlers
│   │   ├── services/       # GitHub API, snapshots, AI
│   │   ├── models/         # MongoDB schemas
│   │   ├── routes/         # API endpoints
│   │   ├── utils/          # Analytics, helpers
│   │   └── middlewares/    # Auth, file uploads
│   └── package.json
│
└── chrome-extension/        # Browser Extension
    ├── manifest.json
    ├── popup.html/js
    ├── settings.html/js
    └── content.js           # GitHub page injections

About

AI-powered GitHub analytics platform with career insights, user comparison, repository health scoring, and beautiful visualizations.

Resources

Code of conduct

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages