This project is a robust resume parsing system capable of extracting key information from PDF resumes. It features a user-friendly frontend interface for uploading resumes and viewing extracted data, coupled with a powerful backend for processing and storing the parsed information.
- Upload PDF resumes
- Extract key information including:
- Name
- Phone Number
- Email Address
- Education (institutions and timeframes)
- Work Experience (companies and durations)
- Technologies/Skills
- Asynchronous parsing for improved performance
- RESTful API for resume upload and data retrieval
- User-friendly frontend for interaction with the system
- Django
- Django Rest Framework (DRF)
- Celery (for asynchronous tasks)
- Redis (as message broker and result backend)
- PyPDF2 (for PDF reading)
- spaCy (for natural language processing)
- HTML/CSS/JavaScript
- jQuery (for AJAX requests)
- Docker (for containerization)
- GitLab CI/CD (for continuous integration and deployment - yet to be implemented)
-
Clone the repository:
git clone https://gitlab.com/iot8283314/resume-parsing-application.git cd resume-parsing-application
-
Pull, build and run the Docker containers:
docker run -p 8000:8000 aashishnandakumar/resume-parser:latest
-
Access the application at
http://localhost:8000
- Navigate to the homepage
- Click on the "Upload Resume" button and select a PDF file
- Wait for the parsing process to complete
- View the extracted information displayed on the page
To set up the development environment:
-
Create a virtual environment:
python -m venv venv source venv/bin/activate # On Windows use `venv\Scripts\activate`
-
Install dependencies:
pip install -r requirements.txt
-
Run migrations:
python manage.py migrate
-
Start the development server:
python manage.py runserver
Run the test suite with:
python manage.py test (yet to be implemented)
The project is set up for easy deployment using Docker and GitLab CI/CD. The .gitlab-ci.yml
file in the repository root defines the CI/CD pipeline. (yet to be implemented)
Contributions are welcome! Please feel free to submit a Pull Request.
This project is licensed under the MIT License - see the LICENSE file for details.