AI Resume Analyzer is a web application that allows users to upload resumes and receive feedback on formatting, ATS (Applicant Tracking System) compatibility, and job-fit scoring. Built with React, TypeScript, and Vite, it provides an interactive and intuitive interface for analyzing resumes and visualizing results.
- Upload resumes in PDF format
- Parse and display resume details
- ATS compatibility checks
- Resume scoring and visual feedback (gauges, badges, charts)
- Clean, responsive UI with TailwindCSS
- Modular architecture for future AI/ML integrations
- Frontend: React, TypeScript, Vite
- Styling: TailwindCSS
- Routing: React Router
- Utilities: pdf.js, custom parsing utilities
- Deployment: Docker support, ready for modern hosting platforms
app/ ├─ components/ # UI components (Uploader, Score visualizations, ResumeCard, etc.) ├─ routes/ # Application routes (upload, resume, auth, home) ├─ lib/ # Utility functions (PDF parsing, helpers) ├─ constants/ # Global constants ├─ types/ # TypeScript type definitions public/ # Icons, images, pdf.js worker
- Node.js (>= 18)
- npm or yarn
git clone https://github.com/yourusername/ai-resume-analyzer.git
cd ai-resume-analyzer
npm installStart the development server with HMR:
npm run devApp will be available at http://localhost:5173.
Create a production build:
npm run build
npm run previewTo build and run using Docker:
docker build -t ai-resume-analyzer .
# Run the container
docker run -p 3000:3000 ai-resume-analyzerPDF Conversion Issue
If you encounter the error:
Failed to convert PDF into an image
The issue is likely due to the pdfjs-dist library version.
To fix this, change the dependency to version 5.3.93 in your package.json and reinstall:
npm install pdfjs-dist@5.3.93That should resolve the problem.
Contributions are welcome! Please open an issue or submit a pull request if you’d like to help improve the project.
This project is licensed under the MIT License.
Built with ❤️ using React Router.