Solution for the Github Jobs Challenge from Devchallenges.io.
Challenge: Create a job search using an API. Use Front-end libraries like React or Vue.
Fulfill user stories below:
- User story: I can see a list of jobs in a city by default
- User story: I can search for jobs with a given keyword
- User story: I can search for jobs with a city name, zip code, or other location
- User story: I can select one option from at least 4 pre-defined options
- User story: I can search for a full-time job only
- User story: I can see a list of jobs with their logo, company name, location, and posted time.
- User story: When I select a job, I can see job descriptions and how to apply like the given design.
- User story: When I am on the job details page, I can go back to the search page
- User story (optional): I can see a list of jobs in the closest city from my location by default
- User story (optional): I can see jobs on different pages, 5 items on each page
Since the Github Jobs API has been deprecated, I have used local data from the file data.js to mock the API response.
All user stories except the optional ones have been fulfilled.
- For searching using keywords, the job-title, location, and some predefined keywords defined in the jobs object in data.js have been used.
- Searching for jobs based on city, zip-code and country have been fulfilled using grouped select options of react-select.
- The routing has been made possible using react-routers.
Find the site in action here!
To clone and run this application, you'll need Git and yarn. From your command line:
# Clone this repository
$ git clone https://github.com/anuva312/GithubJobsChallenge-devChallenges
# Install dependencies
$ yarn install
# Run the app
$ yarn start