3.3 KiB
Project
What This Is
Job Tracker is a personal job-application workspace for an individual user. The user finds jobs elsewhere, imports them into the app, uses AI to improve CVs, cover letters, replies, and follow-ups, and keeps the real-world application process organized through tracking, correspondence, and manual updates.
Core Value
The product must let one person run a real job search without losing the thread: import a role, prepare stronger application material, track what happened, and know exactly what needs follow-up next.
Current State
A substantial brownfield app already exists. The repo has a React frontend, an ASP.NET Core API, and a local FastAPI AI service. Current capabilities already include job tracking, companies, attachments, correspondence, reminders, job import preview, Gmail connection/import, profile CV upload/parsing/rewrite flows, AI-assisted tailored CV and cover-letter generation, candidate-fit/focus-plan/interview-prep/readiness endpoints, and dashboard/system surfaces. S01 moved Gmail import from a generic search surface to a job-aware workspace flow: the backend ranks likely Gmail threads/messages for a specific job, imports report duplicate state explicitly, correspondence persists Gmail thread and sender/recipient metadata, and the job workspace renders those ranked suggestions directly. S02 then tightened the package loop around that context: backend package generation now consumes imported correspondence plus recruiter/job state, and the Tailored CV tab treats tailored CV, cover letter, recruiter message, and saved application-answer material as one editable workspace tied back to the job instead of a throwaway preview pane. S03 turned follow-up drafting into a real thread-aware workspace flow, and S04 connected the dashboard, reminders, and table into one routed daily control loop that opens the same per-job workspace state. The next phase is not greenfield feature invention; it is full milestone revalidation and final workflow polish.
Architecture / Key Patterns
The frontend lives in job-tracker-ui/ and is a React + TypeScript app using MUI. The backend lives in JobTrackerApi/ and is an ASP.NET Core API with EF Core, Identity, background hosted services, and controller-based endpoints. The local AI service lives in tools/summarizer/ and provides summarization plus OCR/text extraction. Existing patterns already center around per-job workspaces, Gmail-backed correspondence import, profile-CV-as-source-of-truth, attachment-level AI inclusion controls, and server-side generation endpoints that return drafts for user review rather than autonomous sending.
Capability Contract
See .gsd/REQUIREMENTS.md for the explicit capability contract, requirement status, and coverage mapping.
Milestone Sequence
- M001: Gmail and draft quality loop — Make Gmail import and AI drafting strong enough to trust as a daily workflow.
- M002: Tracking control center — Strengthen the job table, follow-up surfaces, and tracking rhythm into a clearer control center.
- M003: Deeper inbox-aware assistance — Extend correspondence awareness and context-driven assistance beyond the first Gmail improvements.
- M004: Trust, launchability, and hardening — Polish validation, clarity, performance, and operational trust surfaces for sustained daily use.