Nexus Talent

SaaS platform for AI-powered job application analysis and CV generation: Groq (Llama 3.3 70B), structured prompt engineering, CV generation with @react-pdf/renderer, pnpm monorepo with 4 packages, zero-dependency custom JWT and Screaming Architecture on Express 5.

Summary

Nexus Talent is a SaaS platform for intelligent job application analysis with AI-powered CV generation. Users paste a job description, the backend sends it to Groq (Llama 3.3 70B) with a ~50-line engineered system prompt, and the response is validated with Zod before hitting the UI. The output: a weighted skill matrix, ATS keywords, gap analysis, and personalized outreach. The CV Generator module lets users build resumes with drag-and-drop section ordering (@dnd-kit), tone selection, editorial typography preview, and export to .md/.html/.pdf via @react-pdf/renderer. All built on a pnpm monorepo with 4 packages (web, server, shared, e2e), shared Zod schemas, custom JWT with node:crypto (no jsonwebtoken), 8 security layers, and 470+ tests.

The problem

Developers spend hours manually dissecting each job description: figuring out which skills to highlight, which ATS keywords to include, and how to tailor their profile for every vacancy. The result is generic applications that neither pass automated filters nor stand out to recruiters. On top of that, creating a tailored CV for each application requires designing layouts, organizing sections, and adjusting tone manually.

Architecture & decisions

Nexus Talent follows Screaming Architecture on a pnpm monorepo with 4 packages. Features (analysis, auth, cv, history, profile, settings) are isolated domains with their own router, controller, service, and tests. The shared package contains the Zod schemas that are the single source of truth for both frontend and backend: if a schema changes, TypeScript breaks on both sides. 8 security layers: httpOnly cookie, Zod validation, requireAuth middleware, service-level ownership (findFirst with userId), per-tier rate limiting (60/30/10 per minute), Helmet CSP, Groq API key server-only, and generic 502 for Groq errors to prevent info leaks.