How omikhan4901/cse299 works
ResumeX is a resume-building and job-search workspace. A user creates and edits a resume, sees the actual PDF preview, checks ATS fit, and can save or share it; V2 adds a Career Profile, application tracking, deterministic tailoring, and interview preparation. The graph also captures AI-assisted edits with review, billing/admin controls, and the API’s MongoDB-backed domain data. README documents several capabilities whose implementation was not sampled; those are represented only at supported subsystem paths, with uncertain wiring omitted.
Main entry points: app.js Express API · layout.js Web application · Builder.jsx Resume editor · ApplicationsPage.jsx Application board
Components 32
Resume experience
- Resume editor
client/src/components/builder/Builder.jsx - Editor state
client/src/components/builder/useResumeEditor.js - PDF renderer client
client/src/pdf/client.js - PDF templates
client/src/pdf/engine/Engine.jsx - ATS analysis
client/src/lib/ats/analyze.js - AI assistant UI
client/src/components/builder/ai.jsx
Job search
- Career Profile
client/src/components/profile/ProfilePage.jsx - Profile sync
client/src/components/profile/useProfileSync.jsx - Application board
client/src/components/applications/ApplicationsPage.jsx - Application state
client/src/components/applications/useApplications.js - Resume tailoring
client/src/lib/tailor.js - Interview prep
client/src/lib/interview.js - Search insights
client/src/lib/insights.js
Account platform
- Web application
client/src/app/(app)/layout.js - Authentication
client/src/components/AuthProvider.jsx - Plans and credits
client/src/components/BillingProvider.jsx - Admin console
client/src/components/admin/AdminConsole.jsx
API and data
- AI services
server/routes/ai.js - Resume import
server/lib/ingest.js - Express API
server/app.js - Resume routes
server/routes/resume.js - Profile routes
server/routes/profile.js - Application routes
server/routes/applications.js - ATS routes
server/routes/ats.js - Billing routes
server/routes/billing.js - Public resume routes
server/routes/public.js - MongoDB records
server/models/Resume.js - Application records
server/models/Application.js - Profile records
server/models/CareerProfile.js
Other components
- Resume builder
- Paddle
- Gemini / Vertex AI
Connections 36
- Resume builder → Web application: uses
- Web application → Resume editor: opens
- Resume editor → Editor state: edits
- Resume editor → PDF renderer client: renders preview
- PDF renderer client → PDF templates: renders PDF
- Resume editor → ATS analysis: checks resume
- Resume editor → AI assistant UI: requests assistance
- AI assistant UI → AI services: sends AI request
- AI services → Gemini / Vertex AI: calls model
- AI services → Resume import: validates proposals
- Web application → Career Profile: opens
- Career Profile → Profile sync: syncs resume
- Profile sync → Express API: reads/writes profile
- Web application → Application board: opens
- Application board → Application state: manages
- Application state → Express API: requests applications
- Application board → Resume tailoring: tailors for jobs
- Application board → Interview prep: prepares interviews
- Application board → Search insights: shows history
- Resume editor → Express API: saves resume
- Express API → Resume routes: dispatches
- Express API → Profile routes: dispatches
- Express API → Application routes: dispatches
- Express API → ATS routes: dispatches
- Express API → Billing routes: dispatches
- Express API → Public resume routes: dispatches
- Resume routes → MongoDB records: reads/writes
- Profile routes → Profile records: reads/writes
- Application routes → Application records: reads/writes
- Application routes → MongoDB records: snapshots resume
- Web application → Authentication: establishes session
- Web application → Plans and credits: shows entitlements
- Plans and credits → Express API: loads plan data
- Billing routes → Paddle: manages payments
- Web application → Admin console: opens
- Admin console → Express API: manages settings