ElevareCV — AI Résumé & Career Platform
Résumé builder with job matching, tailoring and grounded AI suggestions.
- Role
- Solo engineer (web client + API contract)
Overview
A career-management app: master career profile, résumé versions, import, PDF/DOCX/TXT export, job matching and tailoring, cover letters and an application tracker. This repo is the React web client; the ASP.NET Core API it talks to is specified in docs/API.md and typed in TypeScript contracts.
Architecture
Client
- React 19
- TanStack Query
- Zustand
- PDF / DOCX / TXT renderers
API (specified)
- ASP.NET Core
- docs/API.md
- Typed contracts
AI
- Server-side only
- Consent + grounding check
What it does
- Master career profile, résumé versions, import, templates, sharing and privacy controls.
- PDF, DOCX and TXT exports generated in the browser from one shared render model.
- Job matching and tailoring, cover letters and an application tracker.
- Autosave with an offline buffer, crash recovery and revision-conflict (409) handling.
- Unit, integration (MSW) and Playwright end-to-end test suites.
Engineering decisions
Content and design kept separate
A draft is { content, design }. Templates are data-only specs read by renderers built from one normalised model, so every export says exactly the same thing and switching templates never touches content.
AI that can't invent facts
AI runs server-side only, asks for consent, shows a word diff, and blocks suggestions that introduce figures, credentials or skills not present in the user's own data.
Typed API contract
The ASP.NET Core API is specified up front in docs/API.md and mirrored in TypeScript contracts, so the client is built against an agreed shape.
Stack
- React 19
- TypeScript
- Vite
- TanStack Query
- Zustand
- Tailwind
- Vitest
- MSW
- Playwright