Resume ATS Checker is a web application designed to help job seekers optimize their resumes for Applicant Tracking Systems (ATS). The application analyzes a resume PDF and a job description to identify relevant keywords, calculate the match percentage, and highlight missing keywords. This tool empowers users to tailor their resumes to specific job requirements, increasing their chances of passing ATS filters.
- Extracts text from resume PDFs and job descriptions.
- Identifies matched and unmatched keywords using Apache OpenNLP.
- Calculates the match percentage between the resume and job description.
- Provides a user-friendly frontend for uploading files and viewing results.
- REST API for backend analysis.
- Spring Boot: Framework for building the backend REST API.
- Apache OpenNLP: Library for natural language processing and keyword extraction.
- Maven: Build and dependency management tool.
- React: JavaScript library for building the user interface.
- Vite: Development environment for fast builds.
- Bootstrap: CSS framework for responsive design.
- React Icons: Library for adding icons to the UI.
To build and run the application, you will need:
- Java 17
- Apache Maven
- Open a terminal and run the following command to clone the repository:
git clone https://github.com/your-repo/ResumeATSchecker.git
- Navigate to the project directory:
cd ResumeATSchecker
- Clean and build the application using Maven:
mvn clean install
- Start the Spring Boot application:
mvn spring-boot:run
- Open your browser and navigate to:
http://localhost:8001
- On the frontend, upload your resume PDF and job description as files.
- Click the "Analyze" button.
- View the match percentage and keyword analysis results.
src/main/java/com/resume/ats/check
: Contains the main application, controllers, models, and utility classes.src/main/resources
: Configuration files and NLP models.
frontend/src
: React components and styles.frontend/public
: Static assets.
This project was made possible by the following libraries and tools:
- Apache OpenNLP: For natural language processing.
- React: For building the user interface.
- Bootstrap: For responsive design.
- Spring Boot: For backend development.
- Maven: For build and dependency management.
- Vite: For fast frontend development.
This project is licensed under the MIT License.