Skip to content

Shasshank12/PathSim

Repository files navigation

PathSim

Resume → Career Trajectory. Upload a resume (PDF/DOCX); get structured JSON, claim decomposition, skill depth/evidence scoring, role matching, trajectory simulation, and counterfactual planning.

Stack

  • Frontend: Next.js 14 (App Router) + Tailwind
  • Backend: Next.js API routes
  • DB: Postgres via Supabase (optional; runs without DB for upload/parse)
  • Parsing: PDF (pdf-parse), DOCX (mammoth)

Quick start

npm install
npm run dev

Open http://localhost:3000. Upload a PDF or DOCX resume on Upload; view structured resume and (with Supabase) run Dashboard for analysis, role match, and trajectories.

Environment

Copy .env.example to .env.local and fill if you want:

  • Supabase: persist resumes and analysis runs; required for /api/resume/[id], /api/.../analyze, /api/simulate, /api/counterfactual with resume_id.
  • OpenAI: optional; used when you add LLM-based claim/skill extraction.

Without Supabase, upload still works and returns structured JSON; the resume is stored in browser session for the current tab.

DB schema

Run the migration in supabase/migrations/001_initial_schema.sql in your Supabase SQL editor (or via Supabase CLI).

API (example)

  • POST /api/upload — form file (PDF/DOCX) → structured Resume JSON
  • GET /api/resume/[id] — get saved resume (Supabase)
  • POST /api/resume/[id]/analyze — claims + skills (Supabase)
  • GET /api/resume/[id]/dashboard — (concept) scores + gaps; use Dashboard page + analyze + match instead
  • POST /api/simulate{ resume_id, target_roles?, horizon_months? } → trajectories
  • POST /api/counterfactual{ resume_id?, skills? } → action recommendations; optional action_id for single action
  • GET /api/export/[resume_id] — (planned) PDF report

UI pages

  1. / — Landing
  2. /upload — Upload resume (PDF/DOCX)
  3. /resume/[id] — Parsed sections, experience, projects, skills, raw text
  4. /dashboard?resume=[id] — Insights (skills depth/evidence), role matches, top trajectories

Data

  • Role library: src/data/roles-library.json (curated roles + weighted requirements)
  • Skills taxonomy: src/data/skills-taxonomy.json (synonyms, categories)
  • Seed: optional npm run seed if you add a seed script that upserts roles

Milestones (from spec)

  1. Upload → Structured Resume — done (parser + structure + UI)
  2. Claim decomposition + Skill map — done (rules-based claims + depth/evidence)
  3. Role library + Matching — done (weighted overlap + gaps)
  4. Trajectory simulator — done (role graph + transition probs)
  5. Counterfactual planner — done (gap-based actions + uplift)
  6. Polish — PDF export, auth, history (planned)

License

MIT

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages