Skip to content

About

Modern job tracking platform that helps developers organize applications, monitor interview pipelines, automate job imports from email providers, and visualize career search metrics through interactive dashboards.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Latest commit

 

History

22 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 

Repository files navigation

Job Tracker

A full stack web app that helps job seekers keep track of every application in one place: where they applied, what stage each process is in, and what to do next. No more spreadsheets, lost links or "did I already apply here?" moments.

Features

  • Application lifecycle management: track each application through its stages.
  • Dashboard and analytics: overview of your applications and progress.
  • Email import workflows: import applications from emails instead of typing them by hand.
  • REST API built with NestJS.

Tech stack

Layer Technologies
Frontend Vue 3, TypeScript
Backend NestJS, TypeScript
Database PostgreSQL 17, Prisma ORM
Queues and cache Redis, BullMQ
Observability Prometheus
Infrastructure Docker, Docker Compose

Repository layout

Monorepo with the applications under apps/:

Job_Tracker/
├── apps/
│   ├── api/                  # NestJS REST API (has its own Dockerfile)
│   └── [TODO: web]/          # Vue 3 frontend
├── docker-compose.yml        # PostgreSQL, Redis and the API
├── docker-compose.dev.yml    # [TODO: describe how it differs]
└── README.md

Getting started

Prerequisites

  • Docker and Docker Compose
  • Node.js [TODO: version] to run the frontend or the API outside Docker

1. Configure the API

The API reads its settings from apps/api/.env:

cp apps/api/.env.example apps/api/.env   # TODO: make sure this file exists in the repo
Variable Description
JWT_SECRET Secret used to sign tokens

DATABASE_URL, REDIS_URL, REDIS_HOST and REDIS_PORT are already set by docker-compose.yml.

2. Start the backend

git clone https://github.com/VittoLym/Job_Tracker.git
cd Job_Tracker
docker compose up --build

This starts three services:

Service Image / build Address
PostgreSQL postgres:17 (database jobtracker) localhost:5433
Redis redis:alpine localhost:6379
API built from apps/api http://localhost:3000

PostgreSQL and Redis have health checks, and the API waits until both are healthy before starting.

The PostgreSQL credentials in docker-compose.yml are for local development only. Use your own secrets in any shared or production environment.

3. Start the frontend

# TODO: replace with your real commands
cd apps/[web]
npm install
npm run dev

Frontend: http://localhost:[TODO port]

Development mode

docker compose -f docker-compose.dev.yml up --build

Testing

# TODO: replace with your real commands
npm run test

Current status: [TODO: be honest here, e.g. "unit tests in progress, see roadmap"].

Roadmap

  • Unit and e2e tests
  • CI with GitHub Actions
  • Add the frontend to Docker Compose
  • [TODO: other ideas]

How I used AI in this project

  • Tools used: [TODO: e.g. Claude Code, Copilot, ChatGPT]
  • What I delegated: [TODO: e.g. boilerplate, Prisma schema drafts, test scaffolding]
  • What I decided and wrote myself: [TODO: e.g. architecture, queue design, data model]
  • How I reviewed AI output: [TODO: e.g. read every diff, ran the app, wrote tests]
  • Agent instructions: see AGENTS.md

Author

Alexander Assón, Backend / Full Stack Engineer, Mendoza, Argentina. LinkedIn · GitHub

About

Modern job tracking platform that helps developers organize applications, monitor interview pipelines, automate job imports from email providers, and visualize career search metrics through interactive dashboards.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages