How mustbesarthak/hireflow works
This repository implements a recruiting platform backend for candidate and recruiter accounts, job listings, applications, profiles, and posts, with a small Next.js frontend whose sampled files expose a login form. The backend workflow is HTTP routing through authentication and feature controllers to PostgreSQL-backed models; application and post actions can also upload files to ImageKit. The README is empty, so capabilities are inferred from the source index and sampled files. Frontend-to-backend wiring and several unsampled feature details are not established by the available evidence.
Main entry points: app.ts HTTP application · db.ts PostgreSQL · jobs.routes.ts Job routes · applications.routes.ts Application routes
Components 25
Application entry
- HTTP application
Backend/src/app.ts
Accounts and profiles
- Login form
frontend/app/_components/LoginForm.tsx - Account routes
Backend/src/routes/users.routes.ts - Profile routes
Backend/src/routes/profile.routes.ts - Registration and login
Backend/src/controllers/register.controller.ts - User operations
Backend/src/controllers/user.controller.ts - Profile operations
Backend/src/controllers/profile.controller.ts - Token validation
Backend/src/middleware/auth.middleware.ts
Jobs and applications
- Job routes
Backend/src/routes/jobs.routes.ts - Job operations
Backend/src/controllers/jobs.controller.ts - Job validation
Backend/src/middleware/job.middleware.ts - Application routes
Backend/src/routes/applications.routes.ts - Application workflow
Backend/src/controllers/application.controller.ts - Application validation
Backend/src/middleware/application.middleware.ts
Posts and media
- Post routes
Backend/src/routes/post.routes.ts - Post operations
Backend/src/controllers/post.controller.ts - Post validation
Backend/src/middleware/posts.middleware.ts
Data and services
- PostgreSQL
Backend/src/config/db.ts - User records
Backend/src/models/user.model.ts - Profile records
Backend/src/models/profile.model.ts - Job records
Backend/src/models/jobs.model.ts - Application records
Backend/src/models/applications.model.ts - Post records
Backend/src/models/posts.model.ts - ImageKit uploads
Backend/src/services/imagekit.service.ts
Other components
- Web user
Connections 34
- Web user → Login form: uses
- HTTP application → Account routes: mounts
Backend/src/app.ts - HTTP application → Profile routes: mounts
Backend/src/app.ts - HTTP application → Post routes: mounts
Backend/src/app.ts - HTTP application → Application routes: mounts
Backend/src/app.ts - HTTP application → Job routes: mounts
Backend/src/app.ts - Account routes → Registration and login: routes to
Backend/src/routes/users.routes.ts - Account routes → User operations: routes to
Backend/src/routes/users.routes.ts - Profile routes → Profile operations: routes to
Backend/src/routes/profile.routes.ts - Job routes → Job operations: routes to
Backend/src/routes/jobs.routes.ts - Job routes → Token validation: validates token
Backend/src/routes/jobs.routes.ts - Job routes → Job validation: validates job
Backend/src/routes/jobs.routes.ts - Application routes → Application workflow: routes to
Backend/src/routes/applications.routes.ts - Application routes → Token validation: validates token
Backend/src/routes/applications.routes.ts - Application routes → Application validation: validates input
Backend/src/routes/applications.routes.ts - Post routes → Post operations: routes to
Backend/src/routes/post.routes.ts - Post routes → Token validation: validates token
Backend/src/routes/post.routes.ts - Post routes → Post validation: validates input
Backend/src/routes/post.routes.ts - Registration and login → User records: reads and writes
Backend/src/controllers/register.controller.ts - Registration and login → PostgreSQL: queries
Backend/src/controllers/register.controller.ts - User operations → Profile records: uses
Backend/src/controllers/user.controller.ts - Profile operations → Profile records: uses
Backend/src/controllers/profile.controller.ts - Profile operations → ImageKit uploads: uploads media
Backend/src/controllers/profile.controller.ts - Job operations → Job records: uses
Backend/src/controllers/jobs.controller.ts - Application workflow → Application records: manages records
Backend/src/controllers/application.controller.ts - Application workflow → Job records: checks job
Backend/src/controllers/application.controller.ts - Application workflow → ImageKit uploads: uploads resume
Backend/src/controllers/application.controller.ts - Post operations → Post records: manages records
Backend/src/controllers/post.controller.ts - Post operations → ImageKit uploads: uploads images
Backend/src/controllers/post.controller.ts - User records → PostgreSQL: queries
Backend/src/models/user.model.ts - Profile records → PostgreSQL: queries
Backend/src/models/profile.model.ts - Job records → PostgreSQL: queries
Backend/src/models/jobs.model.ts - Application records → PostgreSQL: queries
Backend/src/models/applications.model.ts - Post records → PostgreSQL: queries
Backend/src/models/posts.model.ts