A comprehensive full-stack job portal application built with the MERN stack, connecting job seekers with recruiters through an intuitive and secure platform.
- Frontend: https://hiredd-dun.vercel.app
- Backend API: https://hiredd-vwh1.onrender.com
- Features
- Tech Stack
- Getting Started
- API Endpoints
- Environment Variables
- Deployment
- Upcoming Features
- Contributing
- 👤 User Registration & Authentication - Admin side only for now.
- 📄 Profile Management - Upload and manage profile pictures with automatic image resizing
- 🖼️ Image Optimization - Automatic image compression and resizing for optimal performance
- 🔍 Advanced Job Search - Browse, filter, and search through available job postings
- 📧 Application Tracking - Real-time job application status updates
- ⭐ Job Bookmarking - Not handled from FE part
- 🏢 Company Profile Management - Create and manage detailed company information
- 👥 Candidate Management - Review, filter, and manage job applications efficiently
- 📊 Recruitment Dashboard - Monitor job postings, applications,
- 🔍 Candidate Search - Work in Progress
- 🔐 Role-Based Access Control - Granular permissions for job seekers, recruiters, and admins
- ☁️ Cloud Storage Integration - Cloudinary integration with automatic image optimization
- 🛡️ Advanced Security - Secure authentication with httpOnly cookies and CSRF protection
- 🔄 Real-time Updates - Live status updates for applications
- 📊 Data Validation - Comprehensive input validation and sanitization
- 🔧 Error Handling - Comprehensive error logging and user-friendly error messages
- 📦 Modular Architecture - Clean, maintainable code structure
- 🧪 API Testing - Comprehensive test coverage for all endpoints
- React.js - Component-based UI library
- Redux Toolkit - State management
- React Router - Client-side routing
- Axios - HTTP client for API calls
- CSS3 - Styling and responsive design
- Node.js - JavaScript runtime
- Express.js - Web framework
- MongoDB - NoSQL database
- Mongoose - MongoDB object modeling
- JWT - JSON Web Tokens for authentication
- Cookie Parser - Cookie handling middleware
- Multer - File upload handling
- Cloudinary - Cloud-based image storage with automatic resizing
- Vercel - Frontend deployment
- Render - Backend deployment
- Git - Version control
- Postman - API testing
- Node.js (v14 or higher)
- MongoDB (local or cloud)
- Cloudinary account for image uploads
-
Clone the repository
git clone https://github.com/akaash1024/hiredd.git cd hiredd -
Install Backend Dependencies
cd backend npm install -
Install Frontend Dependencies
cd ../frontend npm install -
Set up Environment Variables
Create
.envfile in the backend directory:PORT=3000 MONGO_URL=your_mongodb_connection_string JWT_SECRET_KEY=your_jwt_secret_key CLOUD_NAME=your_cloudinary_cloud_name API_KEY=your_cloudinary_api_key API_SECRET=your_cloudinary_api_secret NODE_ENV=development
-
Start the Application
Backend (from backend directory):
npm start
Frontend (from frontend directory):
npm run dev
-
Access the Application
- Frontend:
http://localhost:5173 - Backend:
http://localhost:3000
- Frontend:
POST /api/auth/register- User registrationPOST /api/auth/login- User loginGET /api/auth/me- Get current userPOST /api/auth/logout- User logout
GET /api/jobs- Get all jobsPOST /api/jobs- Create job posting (recruiters only)GET /api/jobs/:id- Get specific jobPUT /api/jobs/:id- Update job postingDELETE /api/jobs/:id- Delete job posting
POST /api/applications- Apply for jobGET /api/applications/my- Get user's applicationsGET /api/applications/job/:jobId- Get applications for specific job
| Variable | Description | Required |
|---|---|---|
PORT |
Server port number | Yes |
MONGO_URL |
MongoDB connection string | Yes |
JWT_SECRET_KEY |
Secret key for JWT signing | Yes |
CLOUD_NAME |
Cloudinary cloud name | Yes |
API_KEY |
Cloudinary API key | Yes |
API_SECRET |
Cloudinary API secret | Yes |
NODE_ENV |
Environment (development/production) | Yes |
- Connect your GitHub repository to Render
- Set environment variables in Render dashboard
- Deploy with automatic builds on push
- Connect your GitHub repository to Vercel
- Set
VITE_API_URLenvironment variable - Deploy with automatic builds on push
- 👨💼 Admin Dashboard - Comprehensive admin controls and analytics
- 📧 Email Notifications - Automated notifications for applications and updates
- 🤖 AI Integration - AI-powered job matching and resume analysis
Contributions are welcome! Please feel free to submit a Pull Request.
- Fork the project
- Create your feature branch (
git checkout -b feature/AmazingFeature) - Commit your changes (
git commit -m 'Add some AmazingFeature') - Push to the branch (
git push origin feature/AmazingFeature) - Open a Pull Request
This project is open source and available under the MIT License.