Extract the profile
PDF/DOCX resume data becomes structured skills and experience.
From who you are to what comes next.
Help a candidate turn collected job postings into a relevant shortlist.
Rank textual relevance with TF-IDF and cosine similarity; retain user decisions.
An authenticated resume-to-matches workflow, verified end to end by the project owner.
Follow the connections as you scroll, or select a stage to see what happens there.
PDF/DOCX resume data becomes structured skills and experience.
TF-IDF and cosine similarity compare the candidate with collected jobs.
Ranked results and interested/applied/ignored states live in the dashboard.
Full-stack product engineering
Full stack + Backend + AI / ML
Live application
A growing list of openings is not a useful shortlist. The application needs to compare a candidate’s skills and experience with collected postings, then retain that candidate’s decisions over time.
A React/Vite interface uses Neon Auth with a FastAPI backend and PostgreSQL. Resume text feeds the candidate profile; job sources feed normalized openings. TF-IDF vectors and cosine similarity rank the matches, while background refresh and matching tasks keep the dashboard current.
The authenticated application connects resume context to ranked job results, match counts and refresh workflows. Its end-to-end flow has been verified by the project owner. Match scores describe textual relevance and remain distinct from hiring outcomes.
The matching implementation uses TF-IDF and cosine similarity. The illustration shows relative ordering, with no invented percentages or accuracy claims.
Neon Auth/Better Auth sessions are verified by the backend before accessing candidate-specific records.
Collection, refresh and matching support the product beyond the initial upload. Job tracking preserves the user’s decisions.