Skip to content

Latest commit

 

History

History
48 lines (32 loc) · 2.09 KB

File metadata and controls

48 lines (32 loc) · 2.09 KB

JSON Server starter

Thanks for joining us today and many thanks for your time.

This code challenge is using Typescript, ExpressJS and NodeJS technologies. The basic project is already set up but you're welcome to add more packages if you like.

In /src/app.ts you will find the base code of our API. In /src/tests/app.ts you will find a basic unit test for it.

You can use your own tool (Postman, Insomnia etc) to call your API from your local computer once it's alive and running.

This repository is public but not open for merge requests. You should clone it and send back your own repository.

Setup

This is a boilerplate you can start with. Just clone in your own machine and install the dependencies:

$ npm i

To run the server:

$ npm run dev

Task 1 - Fetch product list

Task 2 - Login

Task 3 - Cart

  • Write a POST call that will add a product to the cart.
  • For this task please do not use Dummy JSON Cart API. You should create your own implementation.
  • It will read the payload using CartPayload as type (see type definition) and add to customer's cart (reside in memory for the code challenge).
  • You'll need to write a middleware to block and unauthorized attempt (documentation is available at https://dummyjson.com/docs/auth).
  • Token's payload has customer's ID and you should use that.
  • Avoid product duplication.
  • Return as payload the cart's grand total (sum of all products inside cart) and a list of products (refer to CartContent type). Don't forget the product discount, if applicable.