The Jobby App is a modern web application designed to streamline job searching, application tracking, and employer interactions. It provides an intuitive user experience with powerful features to enhance the job-seeking process.
-
Home Page:
- Shows a list of job postings with titles, company names, and locations.
- Lets you search for jobs by title or company.
- Lets you filter jobs based on category, location, and salary.
-
Job Details Page:
- Shows more details about a job, like salary, company profile, and job description.
- Lets you apply for a job directly.
-
User Authentication:
- Secure login and registration system.
- Uses authentication tokens to keep users logged in.
-
Application Tracking:
- Saves applied jobs and monitors their status.
-
Bookmarks:
- Allows users to save jobs for later.
-
Theme Switcher:
- Lets you pick light or dark mode.
-
Handles Errors:
- Shows error messages if the API doesn't work and lets you retry.
jobby-app/
├── public/ # Static assets
├── src/
│ ├── components/ # Reusable UI components
│ │ ├── Header/
│ │ ├── JobCard/
│ │ ├── SearchBar/
│ │ ├── Filters/
│ ├── pages/
│ │ ├── Home/
│ │ ├── JobDetails/
│ │ ├── Login/
│ │ ├── Register/
│ ├── context/ # Global state management
│ ├── hooks/ # Custom hooks
│ ├── utils/ # Utility functions
│ ├── styles/ # Global styles and themes
│ ├── App.js # Main app component
│ ├── index.js # Entry point
├── package.json # Dependencies and scripts
├── README.md # Project documentation
-
Copy the project:
git clone https://github.com/your-username/jobby-app.git
-
Go to the project folder:
cd jobby-app -
Install everything the app needs:
npm install
-
Run the app:
npm start
-
Home Page:
- Type in the search bar to find a job.
- Use filters to narrow down job listings.
- Click "View Details" to see more about a job.
-
Job Details Page:
- Check all the info about the job.
- Click "Apply Now" to apply for the job.
-
Authentication:
- Register and log in to save jobs and track applications.
-
Theme Switcher:
- Click the button to change between light and dark mode.
- The main file that sets up the pages and routes.
- Manages authentication and global state.
- Manages user authentication and saved jobs.
- Contains the navigation bar, search bar, and theme switcher.
- Shows job listings and includes search and filtering.
- Displays full info about a job and an apply button.
The app gets job listings from:
https://api.example.com/jobs
- Method: GET
- What You Get: A list of job postings with details like
id,title,company,location,salary, anddescription.
- React: For building the app.
- react-router-dom: For moving between pages.
- react-icons: For adding icons.
- styled-components: For styling components.
- JS-Cookie: For managing authentication tokens.
- Add job recommendations based on user preferences.
- Improve UI for mobile devices.
- Implement a chat system for job seekers and recruiters.