Here at Fetch, we love dogs, and hope you do too! Your task is to build a website to help a dog-lover like yourself search through a database of shelter dogs, with the hope of finding a lucky dog a new home!
- You first should have users enter their name and email on a login screen. Then, you should use this information to hit our login endpoint to authenticate with our API.
- Once a user is successfully authenticated, they should be brought to a search page where they can browse available dogs. This page must meet the following requirements:
- Users must be able to filter by breed.
- Results should be paginated.
- Results should be sorted alphabetically by breed by default. Users should be able to modify this sort to be ascending or descending.
- All fields of the Dog object (except for id) must be presented in some form.
- Users should be able to select their favorite dogs from the search results. When finished searching, they should be able to generate a match based on dogs added to the favorites list. A single match will be generated by sending all favorited dog IDs to the /dogs/match endpoint. You should display this match however you see fit.
As for everything else, you have free rein, so get creative! We strongly encourage you to go beyond the minimum requirements to build something that showcases your strengths. You may find it helpful to make use of a component library.
- Your app should be hosted on the internet where it can be visited and interacted with
- Your source code should be stored in a git repository and hosted on the internet (i.e. GitHub)
- You should include any necessary documentation to run your site locally
An engineer will review the code you submit. You will be evaluated based on:
- Code quality
- Testing
- Clean readme and application structure
- Use of best practices
- Fulfillment of minimum requirements
- Site usability/UX
Framework options were React or Svelte.
Front-end app only -> connects/fetches info from an API like Petfinder, etc.
Login? is this possible since I dont have access to the API?
- Build a small backend so I have a database and can do auths
Search page/ Dog List Filter functionality Sorting functionality pagination Favorites -> list of user's favorites Dog Card -> display dog info
Include setup in README Deploy