Skip to content

Latest commit

 

History

10 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

TalentSim

TalentSim is an AI-assisted interview practice platform built to simulate recruiter-style technical interviews, score spoken responses, and help candidates improve through measurable evidence and coaching feedback.

Product overview

  • Frontend: React + TypeScript + Vite
  • Backend: NestJS + Prisma + PostgreSQL
  • Auth: JWT with short-lived access tokens and refresh cookies
  • AI evaluation: backend-only OpenAI calls with deterministic local fallback
  • Resume support: sanitized upload validation and storage
  • Interview evidence: transcripts, WPM, filler counts, face-tracking samples, evaluation metadata

Architecture diagram

flowchart LR
  User[Browser / Candidate] --> FE[React Frontend]
  FE --> API[NestJS API]
  API --> Auth[JWT Auth]
  API --> DB[PostgreSQL + Prisma]
  API --> AI[OpenAI Provider]
  API --> Storage[Supabase Storage or local fallback]
  FE --> BrowserCamera[Camera + Mic]
  BrowserCamera --> FE
Loading

Data flow

flowchart TD
  Upload[Resume upload] --> Validate[Validation + MIME + size check]
  Validate --> Store[Storage + DB record]
  Session[Interview session] --> Answers[Answer + transcript + metrics]
  Answers --> Evaluate[AI evaluation or local fallback]
  Evaluate --> Report[Persisted report snapshot]
  Report --> Dashboard[Progress / streak / achievements]
Loading

Local setup

Prerequisites:

  • Node.js 22+
  • npm
  • PostgreSQL
  • optional Supabase project for resume storage
Copy-Item .env.example .env
Copy-Item backend/.env.example backend/.env
npm install
cd backend
npm install
npx prisma migrate deploy
npx prisma generate
npm run prisma:seed

The seed creates a demo candidate account and a completed interview snapshot so the dashboard/report flows can be explored without real personal data.

Start backend and frontend:

cd backend
npm run start:dev
npm run dev

The frontend defaults to http://localhost:5173; the backend API defaults to http://localhost:4000/api.

Environment variables

  • Frontend: .env.example and .env.production.example
  • Backend: backend/.env.example
  • Required fields include JWT secret, DB URLs, API keys, and allowed frontend origins

Validation commands

Frontend:

npm run lint
npm run test
npm run build

Backend:

cd backend
npm run build
npm test -- --runInBand
npm run lint

Security and privacy notes

  • No provider API key or service-role secret is shipped to the frontend.
  • Access tokens are short-lived; refresh tokens are HTTP-only cookies.
  • Resume uploads reject unexpected file types and oversized payloads.
  • Audit logs are redacted and exclude tokens, passwords, raw transcripts, and resume payload bodies.
  • Ownership checks protect interviews and resume records.

Roadmap

See PROJECT_IMPROVEMENT_PLAN.md for the completed work and the full outstanding execution plan.

About

TalentSim is an AI-powered career readiness platform that transforms interview preparation through intelligent mock interviews, resume analysis, personalized feedback, and real-time performance insights.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages