Git Genius is a powerful web application that provides detailed analytics and insights for GitHub profiles. It helps developers understand their GitHub activity, repository statistics, and coding patterns through an intuitive and visually appealing interface.
- GitHub Profile Analysis: Comprehensive analysis of GitHub profiles with detailed statistics
- Repository Insights: Detailed view of repository metrics including stars, commits, and languages
- Language Distribution: Visual representation of programming language usage across repositories
- Year-based Filtering: Filter statistics by year to track progress over time
- Real-time Search: Instant GitHub username search with profile suggestions
- Responsive Design: Beautiful, responsive UI that works across all devices
- Share Profiles: Easy sharing of analyzed GitHub profiles
- Frontend: React 18 with TypeScript
- Styling: Tailwind CSS with custom animations
- UI Components: Radix UI with shadcn/ui
- Charts: Recharts for data visualization
- API Integration: GitHub API via Octokit
- State Management: TanStack Query (React Query)
- Build Tool: Vite
- Deployment: Vercel
-
Clone the repository:
git clone https://github.com/Developer-Utkarsh/gitgenius.git
-
Navigate to project directory:
cd git-genius
-
Install dependencies:
npm install
-
Create a
.env
file in the root directory with the following variables:VITE_ENV=development VITE_GITHUB_CLIENT_ID=your_github_client_id VITE_GITHUB_REDIRECT_URI=your_redirect_uri VITE_DEV_API_URL=http://localhost:3000/api VITE_DEV_CLIENT_URL=http://localhost:8080 GITHUB_CLIENT_SECRET=your_github_client_secret
-
Start the development server:
npm run dev
-
Open your browser and visit
http://localhost:8080
Note: You'll need to create a GitHub OAuth App and get the client ID and secret. Set the callback URL in your GitHub OAuth App settings to match VITE_GITHUB_REDIRECT_URI.
The project uses several configuration files:
vite.config.ts
for Vite configurationtailwind.config.ts
for Tailwind CSS customizationtsconfig.json
for TypeScript settingseslint.config.js
for code linting
- Visit the application and authenticate with your GitHub account
- Enter a GitHub username to analyze
- View comprehensive statistics including:
- Repository count
- Language distribution
- Total lines of code
- Commit history
- Star count
- Pull request statistics
Contributions are welcome! Please feel free to submit a Pull Request.
- Fork the repository
- Create your feature branch (
git checkout -b feature/AmazingFeature
) - Commit your changes (
git commit -m 'Add some AmazingFeature'
) - Push to the branch (
git push origin feature/AmazingFeature
) - Open a Pull Request
This project is licensed under the MIT License - see the LICENSE file for details.
- GitHub API for providing the data
- shadcn/ui for beautiful UI components
- Recharts for chart components
- Tailwind CSS for styling
For questions or feedback, please open an issue or reach out to the maintainers.
Made with ❤️ by Utkarsh Tiwari