All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
- Documentation Update — Replaced the legacy
.gifdemo in the README with a high-quality.webpanimated recording of the v1.3.0 Optimizer workflow, reducing file size and improving visual clarity. - Hero Image — Updated the
screenshot.pngwith the new design.
- Saved Application Loading — You can now load any previously saved application bundle (resume + JD + optimized versions) back into the Optimizer to continue working.
- Improved Context Selectors — Refactored the Saved Application Selectors in the Interview and Networking tabs into sleek, 1-click Radix Combobox dropdowns with search.
- AI Generation Caching — Interview questions and Networking outreach messages are now cached locally. Pagination and page reloads are instantaneous.
- Resume Versioning Duplication — Saving an edited resume now correctly appends a new version (e.g.,
v2,v3) to the existing application rather than duplicating it. - Form Data Binding — Switching between resume versions in the Optimizer now instantly and correctly updates the text inputs in Zone 1.
- Full Session Persistence — Saving a resume now preserves the complete optimization session, including the original resume baseline and target Job Description. This ensures perfect context synchronization when switching to the Interview Prep and Networking modules.
- Optimizer Layout Width — Corrected header width constraints to span
w-fullinstead of fixed max-widths, improving layout fluidity. - Save to Tracker Action — Fixed an issue with the plus icon and
addApplicationstore logic on the Optimizer's save button.
- Dark Mode — Implemented system-aware dark mode utilizing
next-themesand a polished, dynamic color palette. - Job Application Tracker — Added a dedicated dashboard to track job applications (Company, Title, Status, Link) directly within the app.
- Multi-Resume Management — Introduced a new LocalStorage infrastructure to save, load, and manage multiple resume drafts without losing your session data.
- Mobile Navigation Stepper — Replaced the crowded 3-column layout on mobile with a clean, step-by-step navigation bar.
- AI Deep Links — Added one-tap quick launch buttons that copy prompts to clipboard and instantly open mobile AI apps like ChatGPT, Claude, and Gemini.
- Responsive Header — Intelligent wrapping and stacking for controls on smaller screens prevents UI overlaps.
- Auto-Switch to Results — The application now automatically scrolls and switches to the generated results tab on mobile after generating.
1.1.1 - 2026-02-23
- Project Roadmap — Created
docs/roadmap-v2.mdto document future feature plans (Job Tracker, Interview Prep, LinkedIn Assistant)
- README "First Impression" Audit — Modernised the README with a bold value proposition and a copy-pasteable "Quick Start" guide for developers
- Fixed version regression (updated to
v1.1.1afterv1.1.0)
- Vercel deployment support —
vercel.jsonwith 60 s function timeout for AI streaming - Serverless Ollama guard —
/api/generateand/api/ollama/tagsnow detect Vercel/serverless environments and gracefully disable Ollama, returning a clear user-facing error instead of a timeout isOllamaAvailableUI state — Ollama is hidden from the provider dropdown when running on Vercel so users are never shown an option that cannot work- API key security banner — a dismissible green banner informs users that API keys are stored only in their browser (localStorage) and never sent to our servers
- ATS score feedback in prompt engine — when a high fabrication level is selected, missing keywords, sections, and ATS recommendations are injected directly into the LLM prompt to maximise ATS match scores
- Unknown provider requests now return a descriptive 400 error instead of silently falling through to Ollama
.env.exampleupdated with.env.localnaming convention and Vercel dashboard setup instructions- README and SEO metadata updated with correct repository URLs and Open Graph tags
- Unused
useIdimport inapp/page.tsx(lint warning) - Ollama stream parsing error — migrated to
ai-sdk-ollamaandtoTextStreamResponse()
1.0.0 - 2026-02-22
- AI Resume Optimizer — paste your resume + job description and get a tailored, ATS-optimised resume in seconds
- Multi-provider support — OpenAI, Anthropic (Claude), Google Gemini, DeepSeek, and Ollama (local)
- ATS Scoring — pre/post ATS score comparison with keyword gap analysis and section-level breakdown
- PDF Export — download the optimised resume as a professionally formatted PDF (Classic or Sidebar template)
- Fabrication level slider — control how aggressively the AI rewrites your resume (0 = conservative, 100 = maximum optimisation)
- Cover Letter generator — one-click cover letter tailored to the job description
- Resume import — upload an existing
.pdfor.txtresume to pre-fill the editor - Prompt-only mode — copy the raw LLM prompt to use in any external AI tool
- Dark/light theming, responsive layout, and smooth animations via Framer Motion