ResumeForge is a cutting-edge SaaS-style web application designed to revolutionize the way candidates evaluate and present their technical profiles. By seamlessly integrating with GitHub and LeetCode, ResumeForge fetches and analyzes data, calculates unified skill scores, and delivers personalized insights to help users understand their strengths and areas for improvement. Generate polished, branded PDF reports to showcase your analytical profile to potential employers or for personal progress tracking.
Whether you're a student, a seasoned developer, or a hiring manager, ResumeForge provides objective metrics and visual reports to empower informed decisions.
- Unified Skill Scoring: Combines data from GitHub (contributions, repositories, languages) and LeetCode (solved problems, difficulty distribution) to generate a comprehensive, unified score.
- Personalized Insights: Displays detailed breakdowns of your performance across platforms, highlighting key strengths and areas needing attention.
- Supabase Edge Functions for CORS: Efficiently proxies all LeetCode and sync requests through Supabase Edge Functions, gracefully handling CORS restrictions with proper OPTIONS handling and headers.
- Secure Profile Management:
- Professional PDF Report Generation: Download polished, branded analysis reports generated with
jsPDF
instead of raw JSON data, perfect for sharing. - Robust Backend with PostgREST: Utilizes PostgREST for efficient API interactions, with seamless schema cache reloading to support new columns.
- Modern UX & Responsiveness:
- Elegant Dark Mode support for comfortable viewing.
- Fully responsive design ensuring a smooth experience across all devices.
- Clean and intuitive user interface.
- Frontend: React (or similar, based on
bolt.new
setup) - Backend/Database: Supabase (PostgreSQL, Authentication, Storage, Edge Functions)
- API Layer: PostgREST (via Supabase)
- PDF Generation:
jsPDF
- Styling: Tailwind CSS
- Deployment: Vercel
To get a local copy up and running, follow these simple steps.
- Node.js (v18+)
- npm or yarn
- A Supabase project (with your database schema, storage buckets, and Edge Functions set up)
- GitHub OAuth App credentials
- LeetCode (or other external API) credentials, if applicable for direct fetching (though proxied via Edge Functions)
-
Clone the repository:
git clone https://github.com/RitamPal26/ResumeForge.git cd ResumeForge
-
Install dependencies:
npm install # or yarn install
-
Set up environment variables: Create a
.env.local
file in the root of your project and add your Supabase credentials and other necessary environment variables:NEXT_PUBLIC_SUPABASE_URL=YOUR_SUPABASE_URL NEXT_PUBLIC_SUPABASE_ANON_KEY=YOUR_SUPABASE_ANON_KEY GITHUB_CLIENT_ID=YOUR_GITHUB_CLIENT_ID GITHUB_CLIENT_SECRET=YOUR_GITHUB_CLIENT_SECRET # Add any other required environment variables for LeetCode integration or other services
-
Run the development server:
npm run dev # or yarn dev
Open http://localhost:3000 (or your configured port) in your browser.
Distributed under the MIT License. See LICENSE
for more information.
Contributions are what make the open-source community such an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated.
If you have a suggestion that would make this better, please fork the repo and create a pull request. You can also simply open an issue with the tag "enhancement".
- 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