Back to home
📝

CraftMyResume AI

Build a polished resume through chat

Alpha
Try it live

Overview

An AI resume builder that turns a chat conversation into a formatted, export-ready resume. No templates to fill out, no forms to fight with.

Instead of staring at a blank template, you just talk to the AI about your experience, skills, and goals. It pulls structured info from your responses, asks follow-ups to fill gaps, and builds out the resume in real time.

It can also pull in your GitHub profile for project contributions, parse a LinkedIn export to pre-fill work history, and analyze a reference resume to clone its layout and section structure. Your final output matches the design you picked, not some generic default.

A live preview updates as the conversation goes. When you're done, one click exports a clean PDF. The whole flow is meant to feel like talking to a career coach, not wrestling with a word processor.


Key Features


Tech Stack

Next.js

Handles SSR for fast initial loads, API routes for AI orchestration, and React Server Components for streaming the live preview.

AI / LLM

Powers the chat interface, extracts structured resume data from conversation, and maps casual descriptions to professional resume language.

PDF Generation

Renders the final resume into a PDF, preserving font metrics, margins, and page breaks so the export matches the on-screen preview.

Template Parsing Engine

Analyzes uploaded reference resumes to detect layout grids, heading styles, font sizes, and spacing. Encodes those into a reusable template the PDF renderer can reproduce.


Architecture

Pipeline architecture driven by the chat interface. Messages go into an AI orchestration layer that classifies intent (new info, edit, or question) and extracts structured data (job titles, dates, skills) into a normalized resume schema.

That schema feeds the template engine, which maps sections onto the active layout. A live preview subscribes to schema changes and re-renders on every update.

On export, the PDF service reads the same schema and template params to produce a print-ready document. External sources (GitHub API, LinkedIn parser) go through ingestion adapters that normalize their output before merging with conversational data.


Challenges & Solutions

Accurately cloning diverse resume layouts

Resume templates vary a lot. Multi-column layouts, sidebars, icon-heavy headers, creative typography. The parser has to infer grid structures, spacing ratios, and font hierarchies from a flat PDF with no access to the source file. Edge cases like overlapping text boxes, embedded graphics, and non-standard fonts needed iterative refinement. There's a fallback system that degrades to the closest default template when a layout is too complex to clone exactly.

Generating professional content from conversational input

People describe work casually. "I basically ran the whole backend migration" needs to become something like "Led migration of backend services from monolith to microservices, reducing deploy time by 40%." The AI has to bridge that gap without making up metrics or inflating responsibilities. This took careful prompt engineering, a feedback loop where users confirm or correct bullet points, and tone calibration that adapts to industry and seniority level.

PDF rendering fidelity across formats

Getting pixel-consistent output across PDF readers, operating systems, and print settings is hard. Font substitution, subpixel rendering, and varying default margins all break layouts. The pipeline embeds fonts directly, uses absolute positioning instead of flow layout, and runs a validation pass that checks element positions against template coordinates, flagging drift before download.