Skip to content

amit712singhal/Job-Hunt

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

70 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Job Hunt: Connecting Recruiters and Job Seekers Efficiently


Job Hunt is a web application designed for hirers and recruiters to connect and manage job postings and applications efficiently.

Check out the live demo here.

Table of Contents

Local Setup

  1. Clone the Repository
git clone https://github.com/amit712singhal/job-hunt.git
cd job-hunt
  1. Create .env File in Root

Create a .env file in the root directory with the following content:

PORT=8000
MONGO_URI=mongodb+srv://<username>:<password>@<cluster>.mongodb.net/<db_name>
SECRET_KEY=randomsecretkey
CLOUD_NAME=<cloud_name>
API_KEY=<api_key>
API_SECRET=<api_secret>

For setting up .env credentials:

  • Set up a MongoDB cluster.
  • Go to Cloudinary, log in, and navigate to the dashboard.
  • Under API keys, copy the following:
    • CLOUD_NAME
    • API_KEY
    • API_SECRET
  1. Backend Configuration:

Go to the backend index file and configure CORS settings:

// cd backend/index.js
const corsOptions = {
  origin: 'http://localhost:5173',
  credentials: true,
};
  1. Frontend Configuration:

Update the API endpoints in the frontend constants file:

// cd frontend/src/utils/constant.js
export const USER_API_END_POINT = "http://localhost:8000/api/v1/user";
export const JOB_API_END_POINT = "http://localhost:8000/api/v1/job";
export const APPLICATION_API_END_POINT = "http://localhost:8000/api/v1/application";
export const COMPANY_API_END_POINT = "http://localhost:8000/api/v1/company";
  1. Build and Run:

Run the following commands to build and start the application:

// cd root
npm run build
npm run start

The website will now be accessible at http://localhost:8000.

Hosting on Render

To deploy the project on Render, follow these steps:

  1. Sign in with your GitHub account.
  2. Go to New -> Web Service.
  3. Select the repository to deploy.
  4. After connecting, update the build and start commands:
    • Build Command: npm run build
    • Start Command: npm run start
  5. Choose a suitable plan.
  6. Add your environment variables from the .env file in the settings.
  7. Deploy the service.

Update Environment in Production

After deploying, update the URLs in the project to match the provided Render URL.

  1. Update the CORS origin:
const corsOptions = {
  origin: 'http://<your-render-url>',
  credentials: true,
};
  1. Update the API endpoints in the frontend constants file:
export const USER_API_END_POINT = "http://<your-render-url>/api/v1/user";
export const JOB_API_END_POINT = "http://<your-render-url>/api/v1/job";
export const APPLICATION_API_END_POINT = "http://<your-render-url>/api/v1/application";
export const COMPANY_API_END_POINT = "http://<your-render-url>/api/v1/company";

Final Deployment

Go to Manual Deploy and deploy the latest commit.

Features

  • Job posting management
  • Application tracking
  • Cloud-based storage for job postings
  • Real-time job application updates

Technologies Used

MongoDB Express.js React Node.js Render Cloudinary JWT Bcrypt

Contributing

Contributions to this project are welcome! If you find any bugs or have suggestions for improvements, please create an issue or submit a pull request.

  1. Fork the repository.
  2. Create your feature branch (git checkout -b feature/YourFeature).
  3. Commit your changes (git commit -am 'Add some feature').
  4. Push to the branch (git push origin feature/YourFeature).
  5. Create a new Pull Request.

Connect with Me

I love connecting with new people and exploring new opportunities. Feel free to reach out to me through any of the platforms below:

GitHub LinkedIn instagram Email

License

This project is licensed under the MIT License. See the LICENSE file for details.