A full-stack Next.js application that analyzes your GitHub repositories and categorizes them into Products, Projects, and Experiments — with optional Deep AI Analysis powered by Google Gemini.
- Fetches all public + private repositories via GitHub API
- Scores every repo from 0–100 based on:
- ⭐ Stars (max 40 pts)
- ⚡ Activity / last push (max 25 pts)
- 📋 Completeness — description, homepage, topics (max 25 pts)
- 👥 Community — forks + watchers (max 20 pts)
- Auto-categorizes into 📦 Product / 🛠️ Project / 🧪 Experiment
- 💎 Showcase Picker — highlights portfolio-worthy repos
- 🏆 Top 3 Podium — sabse damdaar projects
- Filter by category, search by name, sort by score/stars/date
- Stats dashboard — total repos, stars, avg score, top language
- Reads each repo's README file
- Sends to Google Gemini AI for intelligent review
- Returns:
- AI Score (0–100)
- Category: Product / Project / Experiment / Learning
- 2–3 sentence honest summary
- Strengths & Improvements
- Showcase Potential: High / Medium / Low
- Tech Stack detection
- Progress bar with real-time updates
- Stop button to pause analysis anytime
- Rate-limit safe (6s gap between requests)
| Technology | Usage |
|---|---|
| Next.js 15 | App Router, Server Components |
| TypeScript | Strict mode, no any |
| Tailwind CSS | Styling, responsive design |
| GitHub REST API | Fetch repos, README files |
| Google Gemini API | Deep AI analysis (free tier) |
git clone https://github.com/Nischayb99/github-portfolio-analyzer.git
cd github-portfolio-analyzernpm installnpm run dev- Go to github.com → Settings
- Developer settings → Personal access tokens → Fine-grained tokens
- Click Generate new token
- Settings:
- Token name:
portfolio-analyzer - Expiration: 90 days
- Repository access: All repositories
- Permissions → Contents: Read-only
- Token name:
- Copy token → paste in the tool's GitHub Token field
⚠️ Never share your token publicly. It gives read access to your private repos.
- Go to aistudio.google.com
- Click Get API Key → Create API key
- Copy the key (starts with
AIzaSy...) - Paste in the tool's Gemini API Key field
✅ Free tier: 15 requests/minute — enough for portfolio analysis.
github-portfolio-analyzer/
├── app/
│ └── page.tsx # Main analyzer page (all logic here)
├── public/
├── package.json
├── tailwind.config.ts
├── tsconfig.json
└── README.md
Total Score = Stars + Activity + Completeness + Community
Score ≥ 50 OR (has homepage + 2 stars) → 📦 PRODUCT
Score ≥ 22 OR any star OR pushed < 60d → 🛠️ PROJECT
Everything else → 🧪 EXPERIMENT
Score ≥ 38 OR Stars ≥ 3 OR (has live demo + score ≥ 20)
- Profile stats, 9 metric tiles
- Top 3 podium with medals
- Filter tabs: All / Product / Project / Experiment / Showcase / Private
- Search + Sort controls
- Per-card score breakdown bars
- Real-time progress bar
- Per-repo AI review cards
- Expandable strengths & improvements
- Tech stack badges
- Showcase potential indicator
- No data stored — all analysis happens client-side in the browser
- GitHub token is only used for API calls, never logged or saved
- Gemini key is only used for analysis requests
- No backend server — pure client-side Next.js
npm run build
vercel deployOr connect your GitHub repo to vercel.com for automatic deploys.
Nischay Bandodiya
- GitHub: @Nischayb99
- Stack: Full-stack | MERN | TypeScript | Tailwind CSS
MIT License — free to use, modify, and distribute.