How hanansolves/talenttap works
TalentTap is a MERN hiring platform for employees and employers. Its intended workflow is account creation or sign-in, job discovery, and employer listing management; the README also documents applications and employer proposal decisions. The graph shows the sampled React entry and Express/auth wiring, plus the documented job and proposal capabilities. Job controllers, job routes, models, and most page implementations were not sampled, so their internal calls and some frontend-to-API links are left unspecified.
Main entry points: App.jsx Page router · jobs.js Job routes · user.js User routes · handleUserSignUp.js Create account
Components 34
React client
- Client entry
src/main.jsx - Page router
src/App.jsx - Shared layout
src/layouts/MainLayout.jsx - Navigation and session
src/components/Navbar.jsx - Home page
src/pages/HomePage.jsx - Job discovery
src/pages/Jobs.jsx - Job details
src/pages/JobPage.jsx - Registration
src/pages/SignUp.jsx - Sign in
src/pages/Login.jsx - Post a job
src/pages/AddJobPage.jsx - Edit a job
src/pages/EditJobPage.jsx
Express API
- API server
backend/app.js - User routes
backend/routes/user.js - Job routes
backend/routes/jobs.js - Create account
backend/controllers/handleUserSignUp.js - Authenticate
backend/controllers/handleUserLogIn.js - Sign out
backend/controllers/handleUserSignOut.js - User profile
backend/controllers/getUserInfo.js - Browse listings
backend/controllers/getJobs.js - Read listing
backend/controllers/getAJob.js - Create listing
backend/controllers/postJob.js - Update listing
backend/controllers/updateAJob.js - Delete listing
backend/controllers/deleteAJob.js - Proposal management
backend/controllers
Identity and media
- Access checks
backend/middlewares/auth.middleware.js - JWT service
backend/services/auth.js - Image hosting
backend/services/cloudinary.js
Persistence
- Mongo connection
backend/db/connection.js - User records
backend/models/user.models.js - Job records
backend/models/job.models.js
Other components
- Employee
- Employer
- MongoDB
- Cloudinary service
Connections 35
- Employee → Client entry: uses
- Employer → Client entry: uses
- Client entry → Page router: renders
- Page router → Shared layout: routes through
- Page router → Home page: routes to
- Page router → Job discovery: routes to
- Page router → Job details: routes to
- Page router → Registration: routes to
- Page router → Sign in: routes to
- Page router → Post a job: routes to
- Page router → Edit a job: routes to
- Shared layout → Navigation and session: renders
- API server → User routes: mounts
- API server → Job routes: mounts
- API server → Mongo connection: connects via
- User routes → Create account: dispatches
- User routes → Authenticate: dispatches
- User routes → Sign out: dispatches
- User routes → Access checks: guards profile
- User routes → User profile: dispatches
- Job routes → Browse listings: dispatches
- Job routes → Read listing: dispatches
- Job routes → Create listing: dispatches
- Job routes → Update listing: dispatches
- Job routes → Delete listing: dispatches
- Create account → User records: creates and reads
- Create account → JWT service: signs token
- Create account → Image hosting: uploads image
- Image hosting → Cloudinary service: uploads
- Authenticate → User records: checks account
- Authenticate → JWT service: signs token
- Access checks → JWT service: verifies token
- Access checks → Job records: checks ownership
- Mongo connection → MongoDB: connects
- Job routes → Proposal management: supports