This is the backend service for ResumeFalcon, an application designed to automate and assist with the job application process. It provides an API to handle job data, process information, and interact with various job platforms.
- RESTful API for managing job application data.
- Scalable and modular architecture using Object-Oriented Programming.
- Automated testing pipeline with GitHub Actions.
- (Planned) Integration with Large Language Models (LLMs) for parsing job descriptions.
- (Planned) Web scraping capabilities to interact with job platforms.
Follow these instructions to get a copy of the project up and running on your local machine for development and testing purposes.
- Python 3.10 or newer
- pip
-
Clone the repository:
git clone https://github.com/vectorc0de/backend-resumefalcon.git cd backend-resumefalcon
-
Install the required dependencies:
pip install -r requirements.txt
To start the development server, run the following command from the project root:
python main.py
The application will be running and available at http://127.0.0.1:8000
.
To run the automated tests, execute the following command from the project root:
pytest
-
URL:
/jobs
-
Method:
PUT
-
Description: Updates or creates a job entry.
-
Request Body:
{ "linkedin_job_post_title": "string", "linkedin_job_post_description": "string", "first_name": "string", "last_name": "string", "login_mail": "string", "company_name": "string", "skills": "string" }
-
Success Response:
{ "message": "string" }
backend-resumefalcon/
├── .github/
│ └── workflows/
│ └── ci.yml # GitHub Actions CI workflow
├── src/
│ ├── api/ # FastAPI application, routers, and endpoints
│ │ ├── endpoints/
│ │ └── server.py
│ ├── core/ # Core components like database clients
│ │ └── redis_client.py
│ ├── models/ # Pydantic data models
│ │ └── job_data.py
│ └── services/ # Business logic and external service integrations
│ └── linkedin_scraper.py
├── tests/ # Unit and integration tests
│ └── test_api.py
├── main.py # Main application entry point
├── requirements.txt # Project dependencies
└── README.md # This file