Skip to content

racquad/nodejs-code-challenge

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

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.

About

NodeJs/Typescript code challenge

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published