The web application presented in this project enables users to parse resumes while incorporating candidate search capabilities for potential recruiters.
Resume Parsing: Users have the option to upload PDF resumes and utilize either JavaScript parsing or NLP parsing techniques to extract relevant information. The parsed data can be modified before being saved to the database.
Resume Repository: Offers a comprehensive collection of stored resumes within the database. Users can conveniently update resume details directly through this application.
Skill-based Candidate Exploration: Empowers users to conduct targeted searches for candidates based on specific skill sets of interest.
Python 3.10.5 and above Elasticsearch 8.8.1 MySQL 8.0
To run the project locally, follow these steps:
- Clone the repository to your local machine.
- Client-side Installation Install the below frontend dependencies by running the following command:
cd client
npm install
. - Create a table in SQL by putting a get request on postman : http://localhost:5000/api/create/table .
- Server-side Installation Install the required backend dependencies by running the following command:
cd backend
npm install
.
Replace the placeholders for credentials with your credentials (Mysql credentials in server.js and also replace the elasticsearch index in server.js).
- Start the Elasticsearch server and make sure it is running.
- Start the MySQL service and ensure it is running.
- Open a terminal or command prompt.
- Navigate to the backend directory.
- Run the server side using the following command:
nodemon index.js
. - Navigate to the frontend directory and run the following command:
npm start
- While editing the data for a candidate after searching for a skill make sure you press 'Enter' after editing the respective detail. e.g once you edit the name, press Enter after editing. Then if you want to edit an email, press enter after editing it. And then press the save button altogether to save both edits at once.
2)After pressing the sync button you will be directed to the next page by default. To view to update statuses after your previous edits navigate to the previous page again.