A full-stack job portal built with the MERN stack — connecting employers and job seekers with role-based access, application tracking, resume upload, and analytics dashboards.
Hirely is a fully responsive job marketplace where employers can post roles and manage applications, while job seekers can build dynamic profiles, upload resumes, save searches, and track their applications — all secured with JWT/OAuth2 authentication.
- 👔 Employer Dashboard — Post jobs, review applications, and view hiring analytics
- 👤 Job Seeker Profiles — Dynamic profiles with resume upload and saved job searches
- 🔐 Authentication — JWT and OAuth2 with role-based access control (Employer / Job Seeker)
- 📄 Application Tracking — End-to-end application flow from apply to hired
- 📊 Analytics Dashboard — Hiring metrics and application statistics for employers
- 🔍 Job Search & Filters — Search, filter, and save job listings
- 📱 Fully Responsive — Mobile-first design across all pages
| Layer | Technology |
|---|---|
| Frontend | React, Tailwind CSS |
| Backend | Node.js, Express.js |
| Database | MongoDB, Mongoose |
| Auth | JWT, OAuth2, role-based access |
| File Upload | Resume upload & storage |
# Clone the repository
git clone https://github.com/officialTechBro/Hirely.git
cd Hirely
# Install backend dependencies
cd backend && npm install
# Install frontend dependencies
cd ../client && npm install
# Set up environment variables
# Add MONGO_URI, JWT_SECRET to backend/.env
# Run backend
cd ../backend && npm run dev
# Run frontend (separate terminal)
cd ../client && npm start| Method | Endpoint | Description |
|---|---|---|
| POST | /api/auth/register |
Register new user |
| POST | /api/auth/login |
Login & get token |
| GET | /api/jobs |
Get all job listings |
| POST | /api/jobs |
Create a job (Employer) |
| POST | /api/jobs/:id/apply |
Apply to a job (Seeker) |
| GET | /api/applications |
Get user's applications |
backend/
├── controllers/ # Route handlers
├── models/ # Mongoose schemas
├── routes/ # API routes
├── middleware/ # Auth & validation
client/
├── src/
│ ├── components/ # Reusable UI components
│ ├── pages/ # Application pages
│ ├── context/ # Auth & state management
│ └── utils/ # Helper functions
- Fork the repository
- Create your feature branch (
git checkout -b feature/your-feature) - Commit your changes (
git commit -m 'Add your feature') - Push to the branch (
git push origin feature/your-feature) - Open a Pull Request
Taiwo Oladosu — Full Stack Engineer
- LinkedIn: linkedin.com/in/oladosu-taiwo
- GitHub: @officialTechBro
- Email: taiwooladosu1@gmail.com