Streamline your job search and application process with JobTracker, a command-line tool that helps you organize and manage your job applications using a local database. Tired of messy spreadsheets? JobTracker provides a structured and efficient way to track your job search progress.
- Effortless Job Logging: Quickly add job postings to your local database directly from your clipboard.
- Intelligent Parsing (Powered by LLMs): JobTracker uses large language models (LLMs) to automatically extract key information from job descriptions, saving you time and effort.
- Structured Data Storage: Store essential job details, including company name, position title, application date, job link, application status, and more, in a well-organized database.
- CLI Interface: Simple and intuitive command-line interface for easy interaction.
- Project Alignment and Skill Gap Analysis: (Future Feature) Plan to add functionality to compare your skills and experience with job requirements.
- Python 3.11+
- Poetry (recommended package manager)
- PostgreSQL (local or remote database)
- Ollama (for LLM functionality)
- Docker (for hosting your own database)
-
Clone the repository:
git clone [https://github.com/](https://github.com/)[your_username]/JobTracker.git cd JobTracker
-
Install dependencies using Poetry:
poetry install
-
Set up your PostgreSQL database and create a
.env
file in the project root with the following variables:POSTGRES_USER=your_username POSTGRES_PASSWORD=your_password POSTGRES_DB=your_database_name DB_HOST=localhost DB_PORT=5432 DATABASE_URL="postgresql://${POSTGRES_USER}:${POSTGRES_PASSWORD}@${DB_HOST}:${DB_PORT}/${POSTGRES_DB}"
-
Ensure Ollama is running and accessible.
-
Ensure you have Docker installed and running.
To add a new job entry:
-
Turn on your database with Docker Compose:
docker compose up -d --build
This command will build and start the database container in detached mode.
-
Copy the job description to your clipboard.
-
Run the JobTracker script:
poetry run python job_tracker/main.py --schema init.sql
or if you installed
poetry shell
you can use it to run as:python job_tracker/main.py --schema init.sql
-
Follow the interactive prompts to confirm the extracted information and add the job to your database.
You can incoprate your own schemas, but you will need to edit the template
for the langchain, so that it can properly create the desired json output you want.
This project is licensed under the terms of the MIT License.
To get started, navigate to the job posting on the website and copy the application details. Once you run the script, it will automatically generate this information as a new entry. You can then review and verify the details before adding them to the database.