Skip to content

arnavsawant9/JobPortal

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 

Repository files navigation

JobPortal

A JobPortal web application built using the MERN stack (MongoDB, Express, React, and Node.js), where users can post job listings, search for jobs, apply for jobs, and manage their job postings.

JobPortal Preview

Table of Contents

Features

  • User Authentication: Sign up, log in, and log out functionality with JWT-based authentication.
  • Job Postings: Employers can post jobs and manage their listings.
  • Job Search: Users can search for jobs using various filters like location, salary, and job type.
  • Application Management: Users can apply to jobs, and employers can view/manage applications.
  • Responsive UI: Mobile-friendly design with React for a smooth user experience.
  • Real-time Notifications: Notifications for job postings, applications, and updates (optional).

Tech Stack

  • Frontend: React, Redux, Bootstrap/Material-UI
  • Backend: Node.js, Express.js
  • Database: MongoDB (with Mongoose for object data modeling)
  • Authentication: JWT (JSON Web Tokens) for secure authentication
  • Deployment: Heroku (or any cloud platform) for backend, Netlify (or any other) for frontend

Installation

To run the project locally, follow these steps:

  1. Clone the repository:
    git clone https://github.com/arnavsawant9/JobPortal.git
    cd JobPortal
    

Install backend dependencies: cd backend npm install

Install frontend dependencies: cd ../frontend npm install

Set up MongoDB: Make sure MongoDB is running locally, or you can use MongoDB Atlas (a cloud-based database service).

Set up environment variables (see Environment Variables section for details).

Run the backend: cd ../backend npm start

Run the frontend: In a new terminal window, run the following commands: cd frontend npm start

The application should now be running at:

Frontend: http://localhost:5173 Backend: http://localhost:3000

Environment Variables You need to set the following environment variables in a .env file in the backend folder: PORT=5000 MONGO_URI=your-mongo-db-connection-string JWT_SECRET=your-jwt-secret

Usage Once the app is running, you can:

Sign up as an employer or job seeker. Post jobs as an employer. Search for jobs as a job seeker. Apply to jobs. Manage your job applications.

Folder Structure JobPortal/ │ ├── backend/ # Backend code (Node.js, Express, MongoDB) │ ├── models/ # Mongoose models │ ├── routes/ # API routes │ ├── controllers/ # Controller functions │ ├── middleware/ # Custom middleware (e.g., auth) │ └── server.js # Entry point for backend │ ├── frontend/ # Frontend code (React, Redux) │ ├── src/ │ │ ├── components/ # React components │ │ ├── pages/ # React pages (Job listings, dashboard, etc.) │ │ ├── store/ # Redux store and actions │ │ └── App.js # Main app component │ └── public/ # Static assets │ └── README.md # This README file

Contributing

Contributions are welcome! Please feel free to submit a Pull Request or create an Issue to report any bugs or feature requests.

Fork the project. Create your feature branch: git checkout -b feature/my-feature. Commit your changes: git commit -m 'Add my feature'. Push to the branch: git push origin feature/my-feature. Open a pull request.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published