How prabin-chamling-rai/careersync works
This is a job marketplace with applicant, employer, and administrator experiences: users discover companies and jobs, create CVs, apply, and manage applications; employers manage companies and job posts and review applications; administrators review company submissions. Chat is a real-time feature, while account verification and interview scheduling support the broader workflow. The sampled source confirms server route registration, database access, and socket message handling; route-to-controller wiring and most page/API interactions are not shown, so those links are left out.
Main entry points: app.js API server · app.vue Nuxt application · index.vue Company discovery · applications.vue Employer workspace
Components 30
Web experience
- Nuxt application
frontend/app.vue - Company discovery
frontend/pages/index.vue - Job browsing
frontend/pages/job.vue - CV builder
frontend/pages/cv.vue - Application views
frontend/pages/my-applications.vue - Employer workspace
frontend/pages/employer/applications.vue - Admin workspace
frontend/pages/admin/dashboard.vue - Chat screens
frontend/pages/chats.vue
Accounts and profiles
- Session state
frontend/stores/user.js - Route access
frontend/middleware/auth.global.ts - Account endpoints
api/routes/authRoute.js - Account operations
api/controllers/authController.js - CV endpoints
api/routes/cvRoute.js - CV and PDF
api/controllers/cvController.js
Jobs and companies
- Company endpoints
api/routes/companyRoute.js - Company management
api/controllers/companyController.js - Job endpoints
api/routes/workRoute.js - Job management
api/controllers/workController.js
Applications and chat
- Application endpoints
api/routes/applicationRoute.js - Application management
api/controllers/applicationController.js - Chat endpoints
api/routes/chatRoute.js - Chat operations
api/controllers/chatController.js
Other components
- Job seeker
- Employer
- Administrator
- API server
api/app.js - DB connection
api/database.js - Job database
- Email service
api/utils/email.js - Socket clients
Connections 26
- Job seeker → Nuxt application: uses
- Employer → Nuxt application: uses
- Administrator → Nuxt application: uses
- Nuxt application → Route access: checks access
- Nuxt application → Company discovery: renders
- Nuxt application → Job browsing: renders
- Nuxt application → CV builder: renders
- Nuxt application → Application views: renders
- Nuxt application → Employer workspace: renders
- Nuxt application → Admin workspace: renders
- Nuxt application → Chat screens: renders
- Route access → Session state: checks session
- Company discovery → API server: fetches companies
- Employer workspace → API server: updates schedule
- API server → Account endpoints: mounts
- API server → Company endpoints: mounts
- API server → Job endpoints: mounts
- API server → CV endpoints: mounts
- API server → Application endpoints: mounts
- API server → Chat endpoints: mounts
- API server → DB connection: connects
- DB connection → Job database: opens connection
- API server → Job database: reads and writes
- API server → Socket clients: dispatches chat
- Account operations → Email service: sends verification
- Company management → Email service: sends decisions