learn

Jobs

Listings, resume applications, and status tracking.

List views strip applications down to counts and an applied flag; only the poster sees full applications on the detail view. Applying attaches a resume plus up to five extra documents through the document uploader and notifies the poster. Active job pairs (poster plus pending, reviewed, or accepted applicants) may message each other without a connection.

What it owns

  • Listings with type, location, skills, and budget
  • Cursor-paged browsing with search and filters
  • Applications with resume and document uploads
  • Poster-side application status changes

Files

File list and purposes from the folder README.

FilePurpose
frontend/src/pages/JobsPage.jsxListings browser screen.
frontend/src/pages/JobDetailPage.jsxListing detail and application screen.
frontend/src/components/jobs/CreateJobModal.jsxListing creation modal.
frontend/src/components/jobs/ApplyJobModal.jsxApplication modal with resume upload.
frontend/src/services/jobService.jsListing and application calls.
backend/routes/jobRoutes.jsListing, apply, status, delete routes.
backend/controllers/jobController.jsFilters, applications, status changes.
backend/models/Job.jsListings with embedded applications.
Jobs slice
BrowserAPIRealtimeCacheDatabaseShareddurableephemeral

Talks to

Sources: frontend/src/services/jobService.js, backend/routes/jobRoutes.js, backend/controllers/jobController.js, backend/models/Job.js (documented at commit cdef8af)

On this page