ForgeCV
AI-powered CV tailoring
Overview
Built out of personal frustration — tailoring a CV for every job posting takes forever. ForgeCV takes your base CV and a job description, then uses an LLM to intelligently reorder, rephrase, and emphasise the most relevant experience without making things up.
Stack
Preview
Add screenshot 1
Drop an image here
Add screenshot 2
Drop an image here
What I learned
- Worked with PDF parsing and text extraction in server-side TypeScript
- Designed prompts that rewrite faithfully — preserving voice while improving relevance
- Learned about the UX challenges of AI-generated content: trust, transparency, control
- Built a diff view so users can see exactly what changed before accepting
Build log
Struggles, findings, decisions, breakthroughs — the honest story.
PDF parsing is terrible
PDFs destroy text structure. Tables become chaos, columns merge. Had to build pre-processing to recover semantic structure before feeding it to the LLM.
Users don't trust AI edits blindly
First version just returned the new CV. Users hated it. They wanted to see what changed. Adding a diff view completely changed the trust dynamic.
Never invent experience
The model is explicitly prompted to only reframe and reorder — never fabricate. This is both ethical and practical: recruiters notice inconsistencies.
Keyword extraction as a pre-step
Extracting the JD keywords first, then using them to guide the rewrite produced much better targeted output than asking the model to do both steps at once.