Your Year in Code, Visualized.
Think "Spotify Wrapped", but for your GitHub activity.
GitHub Recapper breaks down your coding year into a cinematic story. It analyzes your repositories, commits, languages, and stars to spot trends and celebrate your achievements as a developer.
Whether you code daily or just on weekends, see your impact in a fresh, beautiful way.
- 🎬 Story Mode: A "Spotify Wrapped"-style slideshow featuring your top languages, biggest projects, and activity stats.
- 📊 Interactive Dashboard: Explore detailed metrics including specialized commit patterns and repository insights.
- 📅 Time Travel: Select any year (2020-Current) to see your past achievements.
- 🎨 Share Center: Generate beautiful, custom images (Card, Glitch, or Minimal styles) to share on social media.
- 🔒 Privacy First: Data is fetched client-side. Your personal access tokens remain in your browser's memory and are never stored on a server.
- Core: React, TypeScript, Vite
- Styling: Tailwind CSS, Framer Motion (for animations)
- Data: GitHub REST API (Octokit)
- Utilities: html-to-image (for sharing), Recharts (for data viz)
- Node.js (v16 or higher)
- A GitHub account
-
Clone the repository:
git clone https://github.com/yourusername/github-recapper.git cd github-recapper -
Install dependencies:
npm install
-
Run the development server:
npm run dev
-
Open the app: Visit
http://localhost:5173in your browser.
To analyze your data, you need to log in. You have two options:
- OAuth (Recommended for Production): Requires setting up a GitHub OAuth App (see Deployment).
- Personal Access Token (Local Dev): Click "Enter Personal Access Token" on the landing page.
- Generate a token here.
- Required scopes:
repo,read:user.
Deploy easily to Vercel:
- Push your code to a GitHub repository.
- Import the project into Vercel.
- Set up the Environment Variables in Vercel:
GITHUB_CLIENT_IDGITHUB_CLIENT_SECRET(Get these by registering a new OAuth App in GitHub Developer Settings).
- Update your GitHub OAuth App's "Authorization callback URL" to
https://your-app.vercel.app/api/callback.
Contributions are welcome! Please feel free to submit a Pull Request.
- Fork the project
- 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
Distributed under the MIT License. See LICENSE for more information.
Built with ❤️ for developers.
