JDmatcher 📄
A powerful AI-powered tool that analyzes your resume against job descriptions to provide match scores, detailed analysis, and personalized recommendations to help you improve your job applications.
Features
Smart Analysis
Uses Groq's Llama 3.3 70B model to analyze resume-job description compatibility with advanced AI.
Match Scoring
Get a precise percentage match score between your resume and target job requirements.
Skills Gap Analysis
Identify missing skills and qualifications needed for the role with detailed recommendations.
Resume Enhancement
Receive personalized recommendations to improve your application and increase match score.
Downloadable Reports
Export analysis in Markdown or plain text formats for future reference and tracking.
Session Caching
Results are cached to provide consistent scores and reduce API calls for efficiency.
Requirements
Python 3.8+
Latest Python version for optimal performance
Streamlit 1.32.0+
Modern web framework for the user interface
PyPDF2 3.0.1+
PDF processing library for resume parsing
Requests 2.31.0+
HTTP library for API communications
Asyncio 3.4.3+
Asynchronous programming support
Groq API Key
Free API key from groq.com for AI analysis
Installation
Clone the Repository
Install Dependencies
Run the Application
How to Use
Get your API Key
Sign up for a free Groq API key at groq.com
Launch the App
Run the application using Streamlit
Enter your API Key
Input your Groq API key in the sidebar
Upload Resume
Upload your resume in PDF format
Add Job Description
Copy and paste the job description text into the sidebar
Analyze
Click "Analyze Match" and wait for the results
Review Report
Check your match score, strengths, and improvement areas
Download Report
Save your analysis as either Markdown or Text format
How It Works
JDmatcher follows a sophisticated 4-step analysis process:
Resume Analysis
The AI extracts key information from your PDF resume including skills, experience, and qualifications.
Job Description Analysis
The AI parses essential requirements from the job posting to understand what employers are looking for.
Match Calculation
A detailed comparison generates a precise match percentage based on skills, experience, and requirements.
Improvement Suggestions
Personalized recommendations to enhance your application and bridge identified gaps.
All processing is done with deterministic settings to ensure consistent, reliable results.
Example Analysis
Key Matching Points:
- 5 years of Python development experience (Requirement: 3+ years)
- Strong background in data science and machine learning
- Experience with cloud deployment on AWS
- Project management and team leadership experience
Areas for Improvement:
- Missing experience with Kubernetes (mentioned as preferred)
- Consider highlighting database optimization skills more prominently
- Add examples of CI/CD implementation in previous roles
Configuration
The application uses Groq's Llama 3.3 70B model by default. The key parameters are:
temperature: 0
For deterministic outputs and consistent results
seed: 42
For reproducible analysis across sessions
max_tokens: 2048
For comprehensive and detailed responses
model: llama-3.3-70b
Groq's most advanced language model
License
MIT License
This project is licensed under the MIT License - see the LICENSE file for details. Free to use, modify, and distribute.
Acknowledgements
Streamlit
For the intuitive UI framework that makes data apps beautiful
Groq
For the powerful AI API and lightning-fast inference
PyPDF2
For reliable PDF processing capabilities
Open Source Community
For the amazing tools and libraries that make this possible