Check out the live demo of the app here
Jobify is a full-stack MERN (MongoDB, Express, React, Node.js) web application that empowers users to manage job-related activities efficiently. The app provides a feature-rich interface with secure authentication, comprehensive job management, and user profile customization.
- Frontend:
- React
- Styled Components
- React Query
- React Context
- Recharts.js
- Axios
- Backend:
- Express
- Node.js
- MongoDB (Cloud Database)
- Cloudinary (Image Storage)
- JSON Web Token (JWT) for authentication
- 🌐 User Authentication:
- Securely sign up or log in to access personalized features.
- 🕵️ Job Browsing:
- Explore a vast array of available jobs with detailed information.
- ➕ Add New Jobs:
- Registered users can contribute to the job board by adding new job listings.
- ❌ Delete Jobs:
- Remove job listings that are no longer relevant or required.
- 🔄 Update Jobs:
- Modify job details or requirements for existing listings.
- 🔍 Search Jobs:
- Easily search for specific jobs based on keywords or criteria.
- 🎯 Filter Jobs:
- Utilize filtering options to narrow down job listings based on various parameters.
- 🔐 Login & Signup:
- A secure authentication system for user accounts.
- 🖼️ Add Profile Picture:
- Personalize your profile by adding a custom profile picture.
-
Clone Repository:
git clone https://github.com/Louai-Zokerburg/mern-stack-jobify.git
-
Install Dependencies For the server:
cd mern-stack-jobify npm install
-
Install Dependencies For the client:
cd client npm install
-
Configure Environment Variables: Create a
.env
file in the root of the project with the following variables:MONGO_URL= PORT=5100 NODE_ENV=development CLOUD_NAME= CLOUD_API_KEY= CLOUD_API_SECRET= JWT_SECRET= JWT_EXPIRES_IN=
-
Run the Application:
npm run server
- User Registration/Login:
- Open the app and sign up or log in using your credentials.
- Job Browsing:
- Explore available jobs on the main dashboard.
- Add New Jobs:
- If logged in, contribute to the job board by adding new job listings.
- Delete Jobs:
- Remove job listings that are no longer relevant.
- Update Jobs:
- Modify job details or requirements for existing listings.
- Search Jobs:
- Use the search feature to find specific jobs based on keywords.
- Filter Jobs:
- Utilize filtering options to narrow down job listings based on various parameters.
- Login & Signup:
- Securely manage your account through the authentication system.
- Add Profile Picture:
- Personalize your user profile by adding a custom profile picture.