Skip to content

Repository files navigation

JobTailor

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.

Overview

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

Current Status

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.

Core Capabilities

  • 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

Technology Stack

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/

Prerequisites

  • Node.js 18 or later
  • Gemini API key (required for AI parsing/generation)
  • TeX distribution for PDF generation:
    • macOS: brew install --cask mactex-no-gui
    • Linux/Windows: TeX Live or MiKTeX

For API key setup, see API Key Setup.

Installation

git clone <repository-url>
cd JobTailor
npm install
cp .env.example .env.local

Add your key to .env.local:

GEMINI_API_KEY=your_key_here

Quick Start

npm run setup-profile
npm run validate-profile
npm run dev

Open http://localhost:3000.

Scripts

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

Configuration

  • 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.

Project Structure

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

License

Private repository. All rights reserved.

About

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages