Skip to content

misteromb/Job-Hive

Β 
Β 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

151 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

SWOC ACCEPTED PROJECT - JOBHIVE

The Ultimate Project Repository For Beginners 😎



SWOC 2024

πŸ“Œ Introduction

JobHive is a modern job portal designed to bridge the gap between recruiters and candidates. It enables recruiters to post jobs effortlessly, review applications, and streamline candidate selection. Job seekers can easily explore opportunities, apply for jobs, and track their applications. With features like secure authentication, user-friendly interfaces, and seamless functionality, JobHive simplifies the recruitment process. Whether you're hiring or looking for your dream job, JobHive is your go-to platform for success in the professional world.

Contributing 🀝

PRs WelcomeOpen Source Love

We're accepting PRs for our open and unassigned issuesπŸ›. Please check CONTRIBUTING.md✨. We'd love your contributions! Kindly follow the steps below to get started:

0. Star this repository.

1. Fork this repository.

2. Clone the forked repository.

git clone https://github.com/vedanshjainvj/Job-Hive.git

3. Navigate to the project directory.

cd Job-Hive

4. Create a new branch for every feature or bug fix.

git checkout -b <your_branch_name>

5. Make changes.

6. Stage your changes and commit

git add -A

git commit -m "<your_commit_message>"

7. Push your local commits to the remote repo.

git push -u origin <your_branch_name>

8. Create a PR to develop !

9. Congratulations! πŸŽ‰ Sit and relax, you've made your contribution ✌️ ❀️ πŸ’₯

πŸ”₯ Setting up Firebase Admin SDK

In the server, there is a firebase-adminsdk.json file inside the utils folder. This file is required for Firebase authentication and services.

Steps to Retrieve firebase-adminsdk.json:

  1. Go to Firebase Console:

  2. Generate Service Account Key:

    • Navigate to Project Settings β†’ Service accounts.
    • Click Generate new private key under Firebase Admin SDK.
    • Download the JSON file.
  3. Add the File to the Project:

    • Place the downloaded firebase-adminsdk.json inside the server/utils/ folder.

Sample firebase-adminsdk.json Format:

{
  "type": "service_account",
  "project_id": "your-project-id",
  "private_key_id": "your-private-key-id",
  "private_key": "your-private-key",
  "client_email": "your-client-email",
  "client_id": "your-client-id",
  "auth_uri": "https://accounts.google.com/o/oauth2/auth",
  "token_uri": "https://oauth2.googleapis.com/token",
  "auth_provider_x509_cert_url": "https://www.googleapis.com/oauth2/v1/certs",
  "client_x509_cert_url": "your-client-cert-url",
  "universe_domain": "googleapis.com"
}

πŸ“§ Setting Up Gmail Email and Password for SMTP

To enable email notifications, you need a Gmail account and an App Password to authenticate SMTP. Follow these steps:

1. Enable 2-Step Verification

  • Go to your Google Account Security.
  • Scroll to "How you sign in to Google" and enable 2-Step Verification if not already enabled.

2. Generate an App Password

  • In the Security section, find "App Passwords".
  • Select Mail as the app and Other (Custom name) as the device name (e.g., "JobHive").
  • Click Generate, and Google will provide a 16-character password.

3. Update Your Environment Variables

Add the following to your .env file in the backend:

EMAIL=your-email@gmail.com
PASSWORD=your-app-password

Backend ENV

MONGODB_URI=
PORT=
SECRET_KEY=
CLOUDINARY_CLOUD_NAME=
CLOUDINARY_API_KEY=
CLOUDINARY_API_SECRET=
EMAIL=
PASSWORD=

Frontenv ENV

VITE_FIREBASE_API_KEY=
VITE_FIREBASE_AUTH_DOMAIN=
VITE_FIREBASE_PROJECT_ID=
VITE_FIREBASE_STORAGE_BUCKET=
VITE_FIREBASE_MESSAGING_SENDER_ID=
VITE_FIREBASE_APP_ID=
VITE_FIREBASE_VAPID_KEY=
VITE_BASE_URL=


πŸ› οΈ Running JobHive with Docker

We have provided a docker-compose.yaml file to set up the JobHive project using Docker. Follow these steps to run the project using Docker containers.

Steps to Start Docker Containers

  1. Ensure Docker is Installed

  2. Navigate to the Project Directory

    cd Job-Hive
  3. Navigate to the client folder

    cd client && docker build -t job-hive-client .
  4. In the server folder

    cd server && docker build -t job-hive-server .
  5. In the root dir

    docker compose up -d

    This will start the Frontend, Backend, and MongoDB on the specified ports.

  6. To Stop the Containers

    docker-compose down

πŸ† Contribution Points

Contributors can earn points based on the complexity of their tasks:

  • πŸ₯‡ Beginner: 20 Points
  • πŸ₯ˆ Intermediate: 30 Points
  • πŸ₯‰ Advance: 40 Points

SWOC Code of Conduct

As this project is part of SWOC, please follow the Guidelines to ensure smooth participation.

πŸ‘₯ Project Admin

Vedansh Jain
Vedansh Jain
Project Admin
LinkedIn GitHub

Contributors

A huge shoutout to our wonderful contributors

πŸ“„ Ending Note

Thank you for your interest in JobHive! We value your contributions and are excited to have you as part of our community. Feel free to share your ideas, report bugs, and help us make JobHive even better.

πŸŽ‰ 🎊 πŸ˜ƒ Happy Contributing πŸ˜ƒ 🎊 πŸŽ‰

About

Resources

License

Contributing

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages

  • JavaScript 98.1%
  • Other 1.9%