Free ATS Resume Checker Β· AI-Powered Resume Scanner Β· No Signup Required Β· Instant ATS Score
A modern, AI-powered ATS (Applicant Tracking System) Resume Analyzer that helps job seekers understand how their resume performs in automated screening systems. Supports 25+ industries including Software, Healthcare, Finance, Legal, Education, and more!
π Try it Live β
- Primary frontend (Vercel): https://resume-ats-mu.vercel.app
- Alternate / vanity URL: https://ats.lovexog.me
Upload your resume (PDF or DOCX) and get instant, comprehensive analysis:
- See your ATS compatibility score (0-100)
- Understand what's working and what needs improvement
- Get AI-powered suggestions tailored to your industry
- Download a detailed PDF report
| Technology | Business | Healthcare | Other |
|---|---|---|---|
| Software / IT | Marketing | Healthcare / Medical | Legal |
| Data Science / AI | Finance / Banking | Pharmaceutical / Biotech | Education |
| Cybersecurity | Sales | Real Estate | |
| Design / UX | Human Resources | Hospitality | |
| Operations / Supply Chain | Retail / E-commerce | ||
| Consulting | Government | ||
| Project Management | Non-Profit |
- ATS Compatibility Score: Get a comprehensive score (0-100) showing how well your resume will perform
- Candidate Profile Extraction: Automatically extract name, email, phone, LinkedIn, and GitHub
- Domain Detection: AI detects your primary job domain (IT, Data, Marketing, Finance, etc.)
- Skills Analysis: Comprehensive breakdown of technical skills, frameworks, tools, and soft skills
- Projects Review: Analyze project descriptions, technologies used, and impact statements
- Experience Analysis: Evaluate work experience quality, action verbs usage, and metrics
- Issue Detection: Identify formatting issues, missing sections, and ATS compatibility problems
- Smart Suggestions: Get actionable recommendations to improve your ATS score
- PDF Report Download: Download a professional PDF report of your analysis
Resume-ATS now includes a fully local OCR fallback to handle scanned or image-based PDFs. Key points:
- The backend attempts standard PDF text extraction first (PyPDF). OCR runs only when extraction quality is poor (heuristics: text length < 800 chars, word count < 150, missing email or phone).
- OCR uses Tesseract via
pytesseractandpdf2imageto convert pages at 300 DPI and preprocess images (grayscale, contrast, sharpening) before OCR. - Safety controls: max 5 OCR pages, 15s OCR timeout, never OCR DOCX, never store OCR images, never overwrite original PDFs.
- Safety controls: max 5 OCR pages, 30s OCR timeout, never OCR DOCX, never store OCR images, never overwrite original PDFs.
- API responses include
parsing_method("standard" | "ocr" | "ocr_unavailable") andocr_confidence("low" | "medium" | "high").
This makes Resume-ATS more robust for scanned resumes while keeping all processing localβno cloud OCR, no external APIs.
- Next.js 14
- React 18
- TypeScript
- Tailwind CSS
- Framer Motion
- Lucide React Icons
- Python 3.10+
- FastAPI
- PyMuPDF (PDF parsing)
- python-docx (DOCX parsing)
- Node.js 18+
- Python 3.10+
- pip
- Navigate to the backend directory:
cd backend- Create a virtual environment:
python -m venv venv- Activate the virtual environment:
- Windows:
venv\Scripts\activate- macOS/Linux:
source venv/bin/activate- Install dependencies:
pip install -r requirements.txt- Start the backend server:
uvicorn app.main:app --reload --port 8000The API will be available at http://localhost:8000
- Navigate to the frontend directory:
cd frontend- Install dependencies:
npm install- Start the development server:
npm run devThe application will be available at http://localhost:3000
Resume-ATS/
βββ backend/
β βββ app/
β β βββ __init__.py
β β βββ main.py # FastAPI application
β β βββ models/
β β β βββ __init__.py
β β β βββ schemas.py # Pydantic models
β β βββ services/
β β βββ __init__.py
β β βββ resume_parser.py # PDF/DOCX parsing
β β βββ skill_extractor.py
β β βββ domain_classifier.py
β β βββ ats_scorer.py # ATS scoring logic
β βββ requirements.txt
β
βββ frontend/
β βββ src/
β β βββ app/
β β β βββ globals.css
β β β βββ layout.tsx
β β β βββ page.tsx
β β βββ components/
β β β βββ Header.tsx
β β β βββ Hero.tsx
β β β βββ HowItWorks.tsx
β β β βββ Features.tsx
β β β βββ UploadSection.tsx
β β β βββ LoadingOverlay.tsx
β β β βββ ResultsDashboard.tsx
β β β βββ Footer.tsx
β β β βββ results/
β β β βββ ScoreCircle.tsx
β β β βββ ScoreBreakdownCard.tsx
β β β βββ SkillsCard.tsx
β β β βββ ExperienceCard.tsx
β β β βββ ProjectsCard.tsx
β β β βββ KeywordsCard.tsx
β β β βββ IssuesCard.tsx
β β β βββ SuggestionsCard.tsx
β β βββ types/
β β βββ index.ts
β βββ package.json
β βββ tailwind.config.js
β βββ next.config.js
β
βββ README.md
The ATS score is calculated based on:
| Factor | Weight |
|---|---|
| Keyword Relevance | 20% |
| Section Completeness | 20% |
| Formatting Score | 15% |
| Skill Relevance | 20% |
| Experience Clarity | 15% |
| Project Impact | 10% |
- 80-100: Excellent - Resume is well-optimized for ATS
- 60-79: Good - Minor improvements needed
- 40-59: Needs Improvement - Significant optimization required
- 0-39: Poor - Major restructuring needed
Analyze a resume file and return comprehensive ATS analysis.
Request:
- Content-Type: multipart/form-data
- Body: file (PDF or DOCX, max 5MB)
Response:
{
"success": true,
"candidate": {
"name": "John Doe",
"email": "john@example.com",
"phone": "+1-555-123-4567",
"location": "New York, NY"
},
"ats_score": 85,
"score_category": "Excellent",
"domain": {
"primary": "Software / IT",
"confidence": 0.92
},
"skills": {...},
"experience": {...},
"projects": [...],
"issues": [...],
"suggestions": [...]
}Health check endpoint.
- Files are processed in memory and immediately deleted after analysis
- No data is stored on the server
- No user tracking or analytics
- No signup required
- User authentication and resume history
- Job description matching
- AI-powered resume rewriting
- Recruiter dashboard
- Resume comparison
- Industry-specific scoring
MIT License - feel free to use this project for personal or commercial purposes.
Contributions are welcome! Please feel free to submit a Pull Request.
Built with β€οΈ for job seekers everywhere