GitVerseVisualize
No description available
Install / Use
/learn @Alqudimi/GitVerseVisualizeREADME
🚀 GitHub Profile Analyzer
Author: Abdulaziz Alqudimi
A comprehensive web application that analyzes GitHub profiles with AI-powered insights, beautiful visualizations, and detailed analytics.
✨ Features
🤖 AI-Powered Insights (Powered by Google Gemini)
- Developer Profile Summary - AI-generated professional summary and strengths
- Skills Analysis - Automated skill assessment and proficiency levels
- Repository Recommendations - Personalized project suggestions
- Code Quality Insights - AI analysis of coding practices and patterns
- Developer Comparison - Side-by-side AI-powered developer analysis
- Repository Deep Dive - Comprehensive AI analysis of repositories
- Learning Path Generation - Personalized career development roadmap
- PR Analytics Insights - Collaboration patterns and best practices
- Organization Analysis - Team dynamics and technology focus
- Issue Health Assessment - Repository maintenance quality
- Release Cadence Analysis - Delivery discipline and maturity
🔍 Comprehensive Profile Analysis
- Complete user profile with bio, location, company, and social links
- Follower and following statistics with engagement metrics
- Account age and creation date tracking
- Total repositories, stars, forks, and gists count
- Language distribution and expertise areas
- Contribution patterns and activity heatmaps
📊 Advanced Analytics
- Activity Heatmap - Visual contribution calendar
- Network Analysis - Follower/following network visualization
- PR Analytics - Pull request patterns and collaboration metrics
- Organization Analytics - Team and organization insights
- Release Cadence - Deployment frequency and patterns
- Issue Health - Issue management and response quality
- Tech Achievements - Milestone tracking and badges
📈 Repository Insights
- Comprehensive repository listing with search and filters
- Sort by stars, forks, name, or last update
- Language distribution charts
- Commit history and contributor analysis
- Repository health and maintenance metrics
- Deep-dive repository analysis with AI insights
🎨 Modern UI/UX
- Responsive Side Navigation - Mobile-friendly collapsible menu
- Dark Theme - Beautiful gradient backgrounds
- Smooth Animations - Polished transitions and effects
- Icon-Rich Interface - Font Awesome integration
- Multi-Page Architecture - Organized navigation structure
- Mobile-First Design - Works seamlessly on all devices
🏗️ Architecture
Backend (FastAPI)
src/
├── main.py # FastAPI application entry point
├── config.py # Application settings
├── routes/
│ └── api.py # RESTful API endpoints
└── services/
├── github_service.py # GitHub API interaction layer
└── gemini_service.py # AI-powered analysis with Google Gemini
Frontend (Multi-page)
static/
├── index.html # Home/Search page
├── profile.html # User profile overview
├── repositories.html # Repository analysis
├── analytics.html # Activity analytics
├── ai-insights.html # AI-powered insights
├── compare.html # Developer comparison
├── discover.html # Repository discovery
├── network.html # Network visualization
├── heatmap.html # Contribution heatmap
├── learning-path.html # Personalized learning roadmap
├── pr-analytics.html # Pull request analytics
├── org-analytics.html # Organization insights
├── release-cadence.html # Release patterns
├── issues-health.html # Issue management health
├── repository-detail.html # Deep repository analysis
├── tech-achievements.html # Achievement tracking
├── css/
│ └── styles.css # Custom styles and animations
└── js/
├── navigation.js # Shared navigation functionality
├── main.js # Home page logic
├── profile.js # Profile page logic
├── repositories.js # Repositories page logic
├── analytics.js # Analytics page logic
├── ai-insights.js # AI insights page logic
├── compare.js # Comparison page logic
├── discover.js # Discovery page logic
├── network.js # Network visualization logic
├── heatmap.js # Heatmap visualization logic
├── learning-path.js # Learning path logic
├── pr-analytics.js # PR analytics logic
├── org-analytics.js # Organization analytics logic
├── release-cadence.js # Release analytics logic
└── issues-health.js # Issue health logic
🚀 Getting Started
Prerequisites
- Python 3.11+
- Google Gemini API Key (Get it here)
- Docker (optional, for containerized deployment)
Installation
Option 1: Local Development (uv)
-
Clone the repository
git clone https://github.com/Alqudimi/GitVerseVisualize.git cd github-profile-analyzer -
Install dependencies using uv
uv sync -
Set up environment variables
cp .env.example .env # Edit .env and add your GEMINI_API_KEY -
Start the server
uv run uvicorn src.main:app --host 0.0.0.0 --port 5000
Option 2: Docker
-
Build and run with Docker Compose
docker-compose up -d -
Access the application
http://localhost:5000
Usage
-
Search for a GitHub Profile
- Enter any GitHub username on the home page
- Accepts usernames, URLs, or @mentions
- View quick statistics preview
-
Explore AI Insights
- Navigate to "AI Insights" for AI-powered analysis
- Get personalized recommendations
- View skill assessments and growth areas
-
Compare Developers
- Go to "Compare" page
- Enter two GitHub usernames
- Get AI-powered side-by-side comparison
-
Analyze Repositories
- Browse all repositories with advanced filters
- Click on any repo for deep-dive AI analysis
- View code quality, maintainability, and community health scores
-
Track Learning Progress
- Visit "Learning Path" for personalized roadmap
- Get phase-by-phase learning recommendations
- Track your development journey
📡 API Endpoints
User Endpoints
| Endpoint | Method | Description |
|----------|--------|-------------|
| /api/user/{username} | GET | Get basic user profile |
| /api/user/{username}/analyze | GET | Get comprehensive analysis |
| /api/user/{username}/repositories | GET | Get all repositories |
| /api/user/{username}/events | GET | Get recent events |
| /api/user/{username}/languages | GET | Get language statistics |
| /api/user/{username}/commits | GET | Get commit history |
AI Insights Endpoints
| Endpoint | Method | Description |
|----------|--------|-------------|
| /api/ai/profile-summary | POST | Generate AI profile summary |
| /api/ai/skills-analysis | POST | Analyze developer skills |
| /api/ai/recommendations | POST | Get repository recommendations |
| /api/ai/code-quality | POST | Analyze code quality |
| /api/ai/compare | POST | Compare two developers |
| /api/ai/repository-insights | POST | Deep repository analysis |
| /api/ai/learning-path | POST | Generate learning path |
Repository Endpoints
| Endpoint | Method | Description |
|----------|--------|-------------|
| /api/repo/{username}/{repo} | GET | Get repository details |
| /api/repo/{username}/{repo}/languages | GET | Get repository languages |
| /api/repo/{username}/{repo}/commits | GET | Get repository commits |
| /api/repo/{username}/{repo}/contributors | GET | Get repository contributors |
🔧 Technology Stack
Backend:
- FastAPI - Modern, fast web framework
- Google Gemini API - AI-powered insights
- httpx - Async HTTP client for GitHub API
- Pydantic - Data validation
- Uvicorn - ASGI server
Frontend:
- HTML5 & CSS3
- Vanilla JavaScript (ES6+)
- Tailwind CSS - Utility-first CSS framework
- Chart.js - Beautiful data visualizations
- Font Awesome - Icon library
APIs:
- GitHub REST API v3
- Google Gemini AI API
🌟 Key Features
- ✅ AI-Powered Analysis - Google Gemini integration for intelligent insights
- ✅ Side Navigation Menu - Mobile-friendly responsive navigation
- ✅ Multi-page Architecture - Organized, maintainable code structure
- ✅ Real-time Data - Live data from GitHub API
- ✅ Smart Caching - localStorage for performance
- ✅ Responsive Design - Works on all devices
- ✅ Interactive Charts - Visual data representation
- ✅ Developer Comparison - Side-by-side analysis
- ✅ Learning Paths - Personalized career guidance
- ✅ Clean Architecture - Separation of concerns
🔐 Environment Variables
Create a .env file based on .env.example:
# Google Gemini API Key (Required for AI features)
GEMINI_API_KEY=your_gemini_api_key_here
# Optional: GitHub Personal Access Token (for higher rate limits)
GITHUB_TOKEN=your_github_token_here
🐳 Docker Deployment
The application includes Docker support for easy deployment:
# Build the image
docker build -t github-analyzer .
# Run the container
docker run -p 5000:5000 -e GEMINI_API_KEY=your_key github-analyzer
# Or use docker-compose
docker-compose up -d
`
