A powerful Next.js application that uses Google's Gemini AI to analyze resumes against job descriptions and provide detailed feedback and improvement suggestions. Features a sleek black and red dark theme with stunning animations.
- 🤖 AI-Powered Analysis: Powered by Google Gemini AI for intelligent resume evaluation
- 📊 ATS Optimization: Get ATS compatibility scores and optimization tips
- 🎯 Skills Matching: See how your skills align with job requirements
- 📈 Visual Analytics: Beautiful charts and graphs for data visualization
- 🔑 Keyword Analysis: Identify missing and matching keywords
- 💡 Smart Suggestions: Personalized interview tips and improvement recommendations
- 💳 Pro Resume Improvement (₹99): Unlock advanced improvement suggestions and action plan
- 📁 Multi-Format Support: Upload PDF, DOC, and DOCX resume formats
- 🧪 Dummy Job Descriptions (Free): Instantly test with your resume + built-in sample job descriptions
- 🌙 Dark Theme: Sleek black and red design with smooth animations
- 📱 Responsive: Works seamlessly on desktop and mobile devices
- 📊 Vercel Analytics: Built-in analytics for tracking usage
- Frontend: Next.js 15, React 19, TypeScript
- Styling: Tailwind CSS, Framer Motion
- AI: Google Generative AI (Gemini 1.5)
- Charts: Chart.js, react-chartjs-2
- File Processing: PDF-Parse, Mammoth.js
- File Upload: React Dropzone
- Analytics: Vercel Analytics
- Node.js 18+ and npm
- Google AI Studio API key
-
Clone the repository:
git clone <repository-url> cd resume-analyzer
-
Install dependencies:
npm install
-
Set up environment variables:
cp .env.local.example .env.local
Edit
.env.localand add your Gemini API key:GEMINI_API_KEY=your_gemini_api_key_here -
Configure billing variables (for Pro mode):
NEXT_PUBLIC_APP_URL=http://localhost:3000 DODO_PAYMENTS_API_KEY=your_dodo_api_key DODO_PAYMENTS_PRODUCT_ID=your_dodo_product_id_for_99_inr PAYMENT_ACCESS_SIGNING_SECRET=replace_with_a_long_random_secretFor local development only, you can bypass payment and force Pro access:
DEV_FORCE_PRO_ACCESS=true -
Run the development server:
npm run dev
-
Open http://localhost:3000 in your browser.
- Visit Google AI Studio
- Sign in with your Google account
- Create a new API key
- Copy the key to your
.env.localfile
- Upload Resume: Click or drag and drop your resume file (PDF, DOC, or DOCX)
- Enter Job Description: Paste the job description in the text area
- Or use free dummy JDs: Pick a sample JD to test instantly
- Analyze: Run free analysis or unlock Pro for deeper improvements
- Review Results: Get AI-powered feedback and suggestions
src/
├── app/
│ ├── api/analyze/ # API route for resume analysis
│ ├── globals.css # Global styles
│ ├── layout.tsx # Root layout
│ └── page.tsx # Main page
├── components/
│ ├── ui/ # Reusable UI components
│ │ ├── button.tsx
│ │ ├── file-upload.tsx
│ │ ├── loading.tsx
│ │ └── textarea.tsx
│ └── analysis-results.tsx # Results display component
└── lib/
├── gemini.ts # Gemini AI integration
├── text-extraction.ts # File text extraction
└── utils.ts # Utility functions
| Variable | Description | Required |
|---|---|---|
GEMINI_API_KEY |
Google Gemini AI API key | Yes |
NEXT_PUBLIC_APP_URL |
Base app URL used by payment return URL | Yes (for Pro) |
DODO_PAYMENTS_API_KEY |
Dodo Payments API key | Yes (for Pro) |
DODO_PAYMENTS_PRODUCT_ID |
Dodo product ID priced at ₹99 | Yes (for Pro) |
PAYMENT_ACCESS_SIGNING_SECRET |
Secret used to sign paid-access cookie | Yes (for Pro) |
DEV_FORCE_PRO_ACCESS |
Force-enable Pro without payment in non-production only | No |
- Fork the repository
- Create a feature branch
- Make your changes
- Add tests if applicable
- Submit a pull request
This project is licensed under the MIT License - see the LICENSE file for details.
If you encounter any issues or have questions:
- Check the existing issues
- Create a new issue with detailed information
- Include error messages and steps to reproduce
- Google Gemini AI for powering the analysis
- Aceternity UI for beautiful components
- Next.js team for the amazing framework