A Next-Generation, data-driven career hub designed to engineer professional, ATS-optimized, FAANG-level resumes in minutes.
This platform is a modern, full-stack application built with Next.js 16. It leverages cutting-edge natural language processing and advanced heuristics to automatically format and optimize your CV to pass strict legacy Applicant Tracking Systems (ATS) and impress highly technical recruiters.
This application is not just a text editor; it is a pipeline of intelligent parsing engines working together to craft your career narrative.
- Ingestion Engine: You can upload a PDF or paste your raw LinkedIn profile. The parser extracts the unstructured text and maps it perfectly into a strict internal JSON schema.
- Analysis & Scoring: As you type, the
LinterServiceruns locally in your browser. It scans every bullet point for:- 🔴 Weak Verbs (e.g., "helped", "worked")
- 🟢 Missing Metrics (ensuring you quantify your impact)
- 🟡 Corporate Buzzwords (e.g., "synergy", "ninja")
- 🔵 Punctuation Consistency
- Automated Persona Formatting: You select a psychological tone (Aggressive, Analytical, or Collaborative). The backend natural language processor seamlessly rewrites your entire JSON state to match that specific persona.
- Rendering & Export: The engine takes the state and perfectly renders it onto an A4 boundary, ensuring 100% legacy ATS compatibility via high-fidelity PDF or native
.docxexport.
- FAANG Polish (Nuclear Option): A one-click structural overhaul that rewrites your bullet points using the strict Action-Verb + Quantified Impact + Tech Stack format expected by top-tier tech companies.
- Mock Interview Prep Engine: Automatically analyzes the claims in your resume and generates 5 highly aggressive, tailored behavioral/technical interview questions to test your depth.
- Psychological Tone Dial: An interactive slider that seamlessly reframes your entire resume to project an "Aggressive", "Analytical", or "Collaborative" persona depending on the target corporate culture.
- Career Velocity Radar: A live, animated Recharts radar that scores your resume's Impact, Technical Depth, Leadership, and Clarity against synthetic FAANG benchmarks.
- Anti-Bias "Blind Mode": Instantly redact your name, email, specific university names, and company names to generate an anonymized resume for unbiased screening.
graph LR
%% Client Layer
subgraph Client ["Frontend UI (Next.js)"]
Zustand["Zustand Store (Global State)"]
Editor["Editor Pane (Data Entry)"]
Preview["Live Preview Pane (PDF/DOCX)"]
Sidebar["Heuristics Sidebar (Linter/Radar)"]
Editor <--> Zustand
Preview <--> Zustand
Sidebar <--> Zustand
end
%% Backend API Layer
subgraph Backend ["Next.js API Routes (Serverless)"]
Parse["/api/resume/parse"]
Polish["/api/processor/faang-polish"]
Interview["/api/processor/interview-prep"]
Tone["/api/processor/tone-shift"]
LinkedIn["/api/processor/parse-linkedin"]
end
%% NLP / DB Layer
subgraph Services ["External Services"]
NLP["Natural Language Processor"]
MongoDB["MongoDB Atlas (Storage)"]
end
%% Data Flow
Sidebar -->|"Triggers Formatting"| Polish
Sidebar -->|"Requests Prep"| Interview
Editor -->|"Imports Profile"| LinkedIn
Polish <-->|"JSON Payload"| NLP
Interview <-->|"JSON Payload"| NLP
Tone <-->|"JSON Payload"| NLP
LinkedIn <-->|"JSON Payload"| NLP
Parse <--> MongoDB
- Framework: Next.js 16 (App Router, Turbopack)
- Styling: Tailwind CSS & Framer Motion
- State Management: Zustand (Local storage persistence)
- Database: MongoDB via Mongoose
- Authentication: NextAuth.js
- Natural Language Core: Advanced NLP API Integration
- Document Generation:
docxlibrary & React-to-Print
Make sure you have Node.js (v18+) and npm installed. You will also need a MongoDB database cluster (e.g., MongoDB Atlas) and an API key for the backend NLP processor.
-
Clone the repository:
git clone https://github.com/Ayush-kathil/resume-builder.git cd resume-builder -
Install dependencies:
npm install
-
Environment Setup: Create a
.env.localfile in the root directory:# Database Configuration MONGODB_URI=your_mongodb_connection_string # Authentication (NextAuth) NEXTAUTH_SECRET=your_secure_random_string NEXTAUTH_URL=http://localhost:3000 # NLP Provider Keys NLP_API_KEY=your_nlp_api_key
-
Run the Development Server:
npm run dev
Open http://localhost:3000 with your browser to see the application.
Contributions are always welcome! Whether it's reporting a bug, discussing improvements, or submitting a Pull Request, your input is valued.
This project is licensed under the MIT License.