Click here to view the live demo
The Job Portal is a MERN stack-based web application where users can apply for jobs and recruiters can manage job postings. It includes authentication via Clerk and separate functionalities for job applicants and recruiters.
- User Functionality:
- Login/Signup using Clerk authentication.
- View and apply for available jobs.
- Track application status (Accepted/Rejected).
- Recruiter Functionality:
- Separate login/signup for recruiters.
- Dashboard to manage job postings.
- Accept or reject job applications.
- Clone the repository:
git clone https://github.com/shozabali06/Job-Portal-MERN.git
- Navigate to the project directory:
cd Job-Portal-MERN
- Navigate to the backend folder:
cd backend
- Install dependencies:
npm install
-
Configure environment variables: Create a
.env
file in thebackend
folder and add the following:MONGODB_URI=<your-mongodb-connection-string> JWT_SECRET=<your-jwt-secret> CLOUDINARY_NAME=<your-cloudinary-name> CLOUDINARY_API_KEY=<your-cloudinary-api-key> CLOUDINARY_API_SECRET=<your-cloudinary-api-secret> CLOUDINARY_URL=<your-cloudinary-url> CLERK_WEBHOOK_SECRET=<your-clerk-webhook-secret> CLERK_PUBLISHABLE_KEY=<your-clerk-publishable-key> CLERK_SECRET_KEY=<your-clerk-secret-key>
-
Start the backend server:
npm run server
- Navigate to the frontend folder:
cd frontend
- Install dependencies:
npm install
-
Configure environment variables: Create a
.env
file in thefrontend
folder and add the following:VITE_CLERK_PUBLISHABLE_KEY=<your-clerk-publishable-key> VITE_BACKEND_URL=<url-for-backend>
-
Start the frontend server:
npm run dev
- Install dependencies:
npm install
- Run the server:
npm run server
- Install dependencies:
npm install
- Run the client:
npm run dev
MONGODB_URI
: MongoDB connection string.JWT_SECRET
: Secret key for JSON Web Token.CLOUDINARY_NAME
: Cloudinary account name.CLOUDINARY_API_KEY
: Cloudinary API key.CLOUDINARY_API_SECRET
: Cloudinary API secret.CLOUDINARY_URL
: Cloudinary URL.CLERK_WEBHOOK_SECRET
: Clerk webhook secret.CLERK_PUBLISHABLE_KEY
: Clerk publishable key.CLERK_SECRET_KEY
: Clerk secret key.
VITE_CLERK_PUBLISHABLE_KEY
: Clerk publishable key for the frontend.VITE_BACKEND_URL
: URL of the backend server.
Feel free to reach out for further assistance or feature suggestions!