Develop a dog breed wish list
- Create an autocomplete text field that suggests dog breeds as you type (you can find the initial list of dog breeds in
dog-breeds.csv
). - If a dog breed which the user entered does not exist yet, it will need to be added to the list so other users can find it too.
- When the user selects or enters a dog breed, it will need to be added to the wish list of dog breeds of the user.
- The wish list of the user needs to be shown on the same page and updated in real time.
- The user needs to be able to delete a dog breed from their wish list.
- Don't worry about authentication or storing user data, wish lists should clear out on every page load
- The frontend needs to be written in a modern JS framework (preferably React)
- The frontend needs to be compatible with desktop and mobile screen sizes.
- The frontend should be dynamic and update in real time without reloading the page
- The autocomplete js component needs to be built from scratch and not using an existing or 3rd party library
- The component (frontend and backend) needs to be a generic autocomplete such that the dataset is configurable and can be used for more than just dog breeds
- The component should make careful and optimal use of resources.
- You care about design and user experience.
- You create elegant, clean and maintainable code.
- You develop in a way that has clearly defined areas of responsibility.
- You pay attention to details.
- You are able to consider edge cases.
- You care about performance and scalability.
- Push the code to an online repository and send us the link.
- It needs to live somewhere online so we can test it (we recommend to use Heroku)