JobTailor is a local-first application that generates tailored resumes and cover letters from job descriptions, using only verified evidence from your personal experience library.
JobTailor streamlines job applications by turning a target role description into customized application materials. The pipeline extracts requirements, maps them to your documented experience, and generates outputs designed for that role.
The core principle is evidence-based generation:
- No fabricated achievements or skills
- No unsupported claims
- Every generated point traces back to profile data
JobTailor is in active development. Parsing and evidence-matching capabilities are implemented, while end-to-end application pack generation and document output are being completed.
For detailed progress, see the Implementation Roadmap.
- Parse job descriptions and extract requirements
- Match role requirements against profile evidence using weighted scoring
- Manage local profile and application data
- Run CLI utilities for setup, validation, parsing, and matching
- Use a web interface for entering target job descriptions
| Layer | Technology |
|---|---|
| Framework | Next.js 15 (App Router), React 19, TypeScript, Tailwind CSS |
| AI | Google Gemini via @google/genai with provider abstraction |
| Documents | LaTeX to PDF (local pdflatex) |
| Storage | Local files in data/ |
- Node.js 18 or later
- Gemini API key (required for AI parsing/generation)
- TeX distribution for PDF generation:
For API key setup, see API Key Setup.
git clone <repository-url>
cd JobTailor
npm install
cp .env.example .env.localAdd your key to .env.local:
GEMINI_API_KEY=your_key_herenpm run setup-profile
npm run validate-profile
npm run devOpen http://localhost:3000.
| Command | Description |
|---|---|
npm run dev |
Start local development server |
npm run build |
Build for production |
npm run start |
Run production build |
npm run lint |
Run lint checks |
npm run test |
Run test suite |
npm run test:watch |
Run tests in watch mode |
npm run setup-profile |
Initialize data/profile.yml from template |
npm run validate-profile |
Validate data/profile.yml structure |
npm run parse-job |
Parse a job description from CLI |
npm run match-job |
Match parsed requirements to profile evidence |
npm run verify-tracker |
Validate tracker data consistency |
- Profile file:
data/profile.yml - Application artifacts and tracker data are stored locally under
data/
See the Profile Schema for full structure and field guidance.
JobTailor/
├── app/ # Next.js routes and API handlers
├── components/ # UI components
├── lib/ # Core services, modules, and domain logic
├── data/ # Local profile, application, and tracker data
├── templates/ # LaTeX templates
├── scripts/ # CLI and utility scripts
├── tests/ # Unit and integration tests
└── docs/ # Architecture and implementation docs
For a detailed breakdown, see Project Structure.
- Documentation Index
- Architecture
- AI Pipeline
- Evidence-Based Generation
- Profile Schema
- Implementation Roadmap
Private repository. All rights reserved.