/books-challenge-ui

Primary LanguageJavaScriptMIT LicenseMIT

Capital On tap Frontend Challenge v1

This is our challenge for the front-end developer position at Capital on Tap.

You're probably here due to participating in our hiring process. If you stumbled here by accident and if you are interested, you can start the process from here.

If you are not a developer, you can have a look at our other opportunities at our careers page.

About the challenge

This is a challenge, not a test. You are welcome to solve it in any way you see fit. We won't limit your choice of tools or libraries although you should make choices that suit your needs.

What we expect to learn from you with this challenge:

  • Your work style.
  • How you think and solve problems.
  • How you communicate.

Instructions

Consider the ficticious company "Books on Tap" that sells books online. We have created a very simple api where you can query books.

Api url and docs - https://booksontap.azurewebsites.net/

We have built a simple project based on Create-React-App for you to use to get started. Feel free to create your own project structure if you so please.

You can start by cloning this repo to your machine.

There are no time limits although we recommend spending around 3 hours creating your solution.

When you are done, either send us back the source and any other items in a zip file or send us a link to your repo.

Task

You have been asked to create a website that markets and sells books.

  • Visitors to the site should see a well presented list of the available books. You can choose how much information to display for each item in the list.
  • They should be able select an individual book. This action should navigate them to a page containing more details on the book.
  • The book details page should show whether the book is available to buy and any extra details that you think are relevant.
Extra marks
  • Add a shopping basket to the site and an "Add to basket" button on the book details page(s).
  • The visitor should be able to add and remove books from this basket.
  • Reasonable rules must be followed when adding items to the basket. For example, you cannot add more books than there are stock.
  • The site must work nicely on various screen sizes.

Extra points for creativity ✨