Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 

Repository files navigation

JobTrackr

Track every application. Land the offer.
A full-stack job application tracker with AI-assisted job parsing and cover letter generation.

Laravel 12 Livewire 3 PHP 8.2+ Tailwind CSS MySQL 53 tests passing

JobTrackr landing page

Note on the source code This repository is a showcase of the project — screenshots and documentation. The source code is kept in a private repository. Happy to walk through the codebase or grant access on request — just reach out.


About

Job hunting gets messy fast — spreadsheets, sticky notes, and inbox searches are no way to run a search. Applications slip through the cracks, follow-ups get forgotten, and it's impossible to see where you actually stand.

JobTrackr puts the whole process in one place: every role you're chasing, what stage it's at, when to follow up, which resume you sent, and an AI assistant that reads job postings and drafts tailored cover letters for you.

Features

📋 Application tracking

  • Kanban board and table views of the entire pipeline
  • 12 statuses covering the full journey — Saved → Applied → Screening → Assessment → Interview → Offer → Hired, plus outcomes (Rejected, Ghosted, Withdrawn, Declined, Position Closed)
  • Save drafts — bookmark a role before applying, no date required
  • Search, filter by status, bulk actions, and a trash with restore
  • Status history timeline for every application

🤖 AI assistance (Google Gemini)

  • Paste a job posting → auto-extracts position, company, salary, location, and a summary
  • Fetch from a URL → scrapes the posting and fills the form
  • Cover letter generator → produces a tailored letter from the role, job description, and the applicant's background; fully editable and saved with the application
  • Heavy AI calls run in a queued background job so the UI never blocks
  • Rate limited per user to protect the API quota

⏰ Reminders & resumes

  • Follow-up reminders per application, with overdue tracking
  • Upload, preview, download, and manage multiple resumes
  • Attach resumes to specific applications

📊 Dashboards

  • Personal dashboard with pipeline stats and a conversion funnel
  • Admin analytics (role-gated) on its own layout — users, applications by status, feedback volume, and recent submissions

✨ Also included

  • In-app feedback / bug report modal (stored in the database + emailed)
  • Light and dark mode, PWA manifest, Google Analytics support
  • Email verification, avatar uploads, profile management
  • 53 passing tests (Pest) covering applications, statuses, AI services, feedback, and admin access

Screenshots

Dashboard Applications
Dashboard Applications
New application (AI parsing) Reminders
New application Reminders
Resumes Admin analytics
Resumes Admin dashboard
Sign in Register
Login Register

Tech stack

Layer Tools
Backend Laravel 12, PHP 8.2+
Frontend Livewire 3 (+ Volt), Alpine.js, Tailwind CSS, Vite
Database MySQL 8
AI Google Gemini API
Queue Database driver + Supervisor-managed worker
Testing Pest

Engineering notes

A few decisions worth calling out:

  • AI calls are queued, not inline. Cover letter generation takes ~10–15s against the Gemini API. Running that in the web request would tie up a PHP-FPM worker, so it's dispatched to a background job and the UI polls for the result — keeping the app responsive under load.
  • Structured AI output. Job parsing uses Gemini's JSON schema mode rather than free-text prompting, so the extracted fields are reliably typed instead of parsed out of prose.
  • Storage is disk-agnostic. Avatars and resumes stream through a configurable filesystem disk, so the same code runs on local disk in development and S3-compatible object storage in production (where ephemeral containers would otherwise wipe uploads).
  • Authorization is enforced at the query level. Every application, resume, and reminder query is scoped to the owning user, and file downloads check ownership before streaming.

Built by Hannah Grace Tano

About

A job application tracker that organizes your entire search — pipeline, reminders, resumes — and uses AI to parse postings and draft cover letters.

Topics

Resources

Stars

Watchers

Forks

Releases

Packages

Contributors