Skip to content

Latest commit

 

History

History
44 lines (33 loc) · 2.19 KB

challenge-description.md

File metadata and controls

44 lines (33 loc) · 2.19 KB

AMARO front-end challenge

The objective of this challenge is to build a catalog page for some products of AMARO.

Rules

  • The page can't be static. It needs some logic to show all products dynamically.
  • All products from products.json must be shown.
  • You need to use some build tool (Grunt, Gulp, npm, Webpack, etc) to bundle your files. And ES2015+ features of course. And don't forget to add instructions on how to run the project.
  • Do not ask your friends to solve the challenge for you. You'll need to explain your choices in person.

Requirements

  • The app must be responsive. Use a mobile-first approach.
  • For each item on the catalog, the following information must be present on the page:
    • Image
    • Name
    • Price
    • Promo Status
    • Promo price (if available)
    • Available Sizes
    • Sale badge
  • It must be possible to add products by size to the cart.
  • It must be possible to view the cart with the items you've added (name, image, price, quantity) and the grand total.
  • The cart should be persisted between reloads.

Bonus points

  • Easy as pie? So add more functionality to cart allowing users to add, remove and change quantity of cart items.
  • Want more challenges? Add a filter to show only products on_sale or a search box.
  • Some products don't have all sizes available. Show only the ones on stock.
  • We like clean and testable code, right? Test your application and components, it will be a big bonus point.

What we will evaluate

  • Your code will be evaluated by: semantics, structure, legibility, size, among other factors.
  • The git history will be avaluated.
  • Our stack here is React, Redux, SCSS and Webpack so using the same stack will make a difference.
  • We're looking for a front-end developer who knows how to build layouts and knows a lot about JavaScript. Use this as an opportunity to show us how good you are on both areas.
  • Do not forget to document the process needed to run and build your app. Or else how are we going to evaluate your work if we can't init the project on our machines?

Got questions?

  • The challenge is harder than you anticipated? Would you like to show your experience with something else? Contact us by opening an issue.