How omkarshirol4-cloud/plit works
PROV serves candidates building profiles, applying, completing optional assessments and timed skill verification, and recruiters posting jobs and reviewing ranked applicants. Its core hiring evidence remains distinct: resume screening produces a component breakdown, while verification reports integrity signals separately for human review. The graph follows documented candidate and recruiter workflows and sampled API ownership; README-described ML stages are included, but their detailed wiring is limited to documentation because those Python sources were not sampled.
Main entry points: db.ts SQLite database · service.py Verification ML service · dashboard/route.ts Candidate dashboard · shortlist/route.ts Run shortlist
Components 25
Candidate experience
- Profiles and resumes
web/app/api/candidates/route.ts - Job applications
web/app/api/applications/route.ts - Skill assessments
web/lib/assessments.ts - Assessment routes
web/app/api/assessments/route.ts - Candidate dashboard
web/app/api/candidates/[id]/dashboard/route.ts - Achievements
web/lib/achievements.ts
Recruiter workflow
- Job listings
web/app/api/jobs/route.ts - Run shortlist
web/app/api/shortlist/route.ts - Ranked applicants
web/app/api/jobs/[id]/shortlist/route.ts
Resume screening
- Screening client
web/lib/ml.ts - Resume screening ML
resume_screening/service.py - Resume text extraction
resume_screening/extract_text.py - Skills and TF-IDF scoring
resume_screening/score.py
Integrity verification
- Clip upload route
web/app/api/applications/[id]/verify/route.ts - Verification client
web/lib/ml.ts - Verification ML service
ml/verification/service.py - Signal analysis
ml/verification/gaze.py - Audio and lip-sync
ml/verification/audio.py - Signal fusion
ml/verification/fusion.py - Session ingestion
web/app/api/verification-sessions/route.ts - Session lookup
web/app/api/verification-sessions/[applicationId]/route.ts
Platform services
- Token economy
web/lib/tokens.ts - SQLite database
web/lib/db.ts
Other components
- Candidate
- Recruiter
Connections 33
- Candidate → Profiles and resumes: creates profile
- Candidate → Job listings: browses roles
- Candidate → Job applications: submits application
- Job applications → SQLite database: writes application
- Profiles and resumes → SQLite database: stores profile
- Job listings → SQLite database: stores jobs
- Candidate → Assessment routes: requests assessments
- Assessment routes → Skill assessments: lists assessments
- Candidate → Candidate dashboard: views progress
- Candidate dashboard → Token economy: reads wallet
- Candidate dashboard → Achievements: lists achievements
- Candidate dashboard → SQLite database: reads candidate state
- Recruiter → Job listings: posts role
- Recruiter → Run shortlist: runs screening
- Run shortlist → SQLite database: reads applicants
- Run shortlist → Screening client: sends applicant pool
- Screening client → Resume screening ML: requests ranking
- Resume screening ML → Resume text extraction: extracts resume text
- Resume screening ML → Skills and TF-IDF scoring: scores applicants
- Run shortlist → SQLite database: stores ranked rows
- Recruiter → Ranked applicants: reviews shortlist
- Ranked applicants → SQLite database: reads ranking and signals
- Candidate → Clip upload route: uploads recorded clip
- Clip upload route → Verification client: forwards clip
- Verification client → Verification ML service: requests analysis
- Verification ML service → Signal analysis: analyzes gaze
- Verification ML service → Audio and lip-sync: analyzes audio and lips
- Verification ML service → Signal fusion: fuses signals
- Verification ML service → Session ingestion: posts result
- Session ingestion → SQLite database: stores session and status
- Clip upload route → SQLite database: reads stored session
- Candidate → Session lookup: checks verification
- Session lookup → SQLite database: reads session