ATS Resume Analyzer is a Flask-based web application that helps job seekers evaluate their resumes against job descriptions using AI. The application uses the Groq API to provide detailed analysis and matching scores between resumes and job descriptions.
The application provides:
- Resume analysis with AI-powered feedback
- ATS compatibility scoring
- Skill gap analysis
- Detailed recommendations for improvement
- Resume Analysis: Upload PDF resumes for AI-powered analysis
- Job Description Matching: Compare resumes against specific job descriptions
- Percentage Match: Get detailed matching scores
- Multiple Analysis Types: Choose between quick match or detailed analysis
- Web Interface: User-friendly interface for easy interaction
- Docker Desktop
- ngrok (for exposing the application)
- Groq API key
- Backend: Python Flask
- PDF Processing: PyPDF2, pdfplumber
- AI Model: Groq API with deepseek-r1-distill-llama-70b
- Temperature: 0.1 (for consistent outputs)
- Max Tokens: 2000
- Top P: 0.95
- Containerization: Docker
- Tunnel Service: ngrok
- Resume Analysis: Uses deepseek-r1-distill-llama-70b model for accurate resume parsing
- Matching Algorithm: AI-powered comparison between resume and job description
- Scoring System:
- Match Percentage: How well the resume matches job requirements
- ATS Score: Resume's compatibility with ATS systems
- Key Matches: Identified matching skills and qualifications
- Missing Requirements: Gaps in qualifications
- Detailed Assessment: Comprehensive analysis of resume strengths and weaknesses
-
Clone the Repository:
git clone https://github.com/hemanth090/ATS-V2.git cd ATS-V2
-
Configure Environment: Create a
.env
file with:FLASK_APP=app_web.py FLASK_ENV=production FLASK_DEBUG=0 GROQ_API_KEY=your_groq_api_key_here
-
Install ngrok:
- Download from: https://ngrok.com/download
- Extract to a folder (e.g.,
C:\ngrok
) - Sign up and configure authtoken:
ngrok config add-authtoken YOUR_AUTH_TOKEN
-
Build Docker Image:
docker build -t ats-app .
-
Run Container:
docker run -d -p 5000:5000 ats-app
-
Start ngrok tunnel:
ngrok http --region=in 5000
-
Access the application:
- Local: http://localhost:5000
- Public: Use the URL provided by ngrok
- Monitor: http://127.0.0.1:4040 (ngrok web interface)
-
Stop Docker container:
docker stop ats-app docker rm ats-app
-
Stop ngrok:
- Press Ctrl+C in ngrok terminal, or
- Run:
taskkill /F /IM ngrok.exe
- Access the application through your browser
- Upload a PDF resume
- Enter the job description
- Choose analysis type:
- Quick Match: For percentage match score
- Detailed Analysis: For comprehensive feedback
- View the analysis results
- View Docker container status:
docker ps
- Monitor ngrok traffic: http://127.0.0.1:4040
- Check container logs:
docker logs ats-app
- Keep your Groq API key secure
- Don't commit the
.env
file - Use HTTPS URLs provided by ngrok
- Monitor ngrok dashboard for suspicious activity
-
If Docker container fails:
docker logs ats-app
-
If ngrok doesn't connect:
- Verify container is running on port 5000
- Check ngrok authentication
- Restart ngrok with
--region=in
flag
Contributions are welcome! Please follow these steps:
- Fork the repository
- Create a new branch (
git checkout -b feature/improvement
) - Make your changes
- Commit your changes (
git commit -am 'Add new feature'
) - Push to the branch (
git push origin feature/improvement
) - Create a Pull Request
- Developer: Hemanth Kokkonda
- Email: [email protected]
- LinkedIn: hemanthkokkonda
- GitHub: hemanth090
This project is licensed under the MIT License - see the LICENSE file for details.
Copyright (c) 2024-2025 Hemanth Kokkonda