JobTracker Offer Kitty - Local-First macOS Job Application Tracker
SwiftUI/macOS/SQLite/GRDB/ZIPFoundation/Local-first desktop product engineering
Author: Regan Yin | Platform: macOS 14+ (Apple Silicon ready) | Version: 1.0.0
A local-first desktop app to track job applications from your own document folders, with SQLite persistence, structured workflow tracking, analytics views, and export support.
Contents
Executive Summary Tech Stack MVP Scope Architecture Product Features Privacy, Security, and License How to Run LocallyExecutive Summary
JobTracker Offer Kitty turns unstructured job-material folders into structured company and application records. It prioritizes conservative inference, high transparency, and quick manual correction, so users keep full control over data quality while still getting dashboards, reminders, and exportable results.
Tech Stack
SwiftUI Swift Concurrency (async/await) SQLite GRDB ZIPFoundation Swift Package Manager macOS-native local app architectureMVP Scope
In Scope
- User-selected root folder scan with recursive parsing.
- Artifact classification for application materials (.docx/.doc).
- Role and company inference with confidence-aware rules.
- Manual CRUD, duplicate suggestions, and merge workflows.
- Analytics dashboards, KPI cards, reminders, and CSV export.
- Fully local storage and operation without paid APIs.
Out of Scope (MVP)
- Email/Outlook ingestion and mailbox automation.
- LinkedIn scraping or browser automation.
- Cloud sync and multi-user collaboration.
- ML/LLM-based classification in core pipeline.
- OCR-heavy document extraction.
Architecture
| Layer | Implementation | Purpose |
|---|---|---|
| App Shell | SwiftUI + AppState | Navigation, theme, onboarding, global state |
| Data Ingestion | FolderScanner + IngestionService | Scan files, classify artifacts, infer role/application records |
| Domain Logic | Classifier, normalizer, scoring, dedupe/merge services | Transform signals into trackable entities with validation |
| Persistence | AppDatabase + GRDB repositories | Store companies, applications, tasks, and export artifacts |
| UI Features | Overview/Applications/Companies/Exports/Settings | Operations, analytics, review, and output |
Product Features
- Onboarding scan: one-time folder selection + immediate structured ingest.
- Application funnel tracking: stage/outcome/last-failed-stage data model.
- Company intelligence: mapping fields for industry and company size.
- Duplicate governance: suggest duplicates, never auto-merge silently.
- Export readiness: CSV outputs for external analysis and reporting.
- Low-ops deployment: local app build path with optional packaging script.
Privacy, Security, and License
- Privacy: no telemetry or cloud sync in core features; data remains local on device.
- Storage path:
~/Library/Application Support/JobTracker/jobtracker.sqlite. - Security posture: dependency-based local build with no hidden remote backend.
- License: non-commercial community license in repository; commercial use requires permission.
How to Run Locally
git clone https://github.com/Regan-Yin/JobTracker_Offer_Kitty.git
cd JobTracker_Offer_Kitty
swift package resolve
swift build
open .build/debug/JobTracker Optional packaging script: Scripts/package_mac_app.sh for building a distributable .app and zip package.