You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

2.2 KiB

Shelf Project

An online storefront to showcase products. Users is able to browse an index of all products, see the specifics of a single product, and add products to an order that they can view in a cart page.

Installation

1 - Install packages dependencies. npm install 2 - Inside shelf folder mount the database. docker compose up 3 - Run tests. npm run test 4 - Run the database npm run up 5 - Launch the application npm run start

Note : If needed you can reset the tables by closing the app and running the following commands :

  • npm run down
  • npm run up

Availaible endpoints

  • Products :

    HTTP Verb Endpoint CRUD
    Get /products Index
    Get /products/:id Read
    Post /products Create ( Token )
    Put /products/:id Update ( Token )
    Delete /products/:id Delete ( Token )
  • Users :

    HTTP Verb Endpoint CRUD
    Get /users, Index ( Token )
    Get /users/:id Read ( Token )
    Post /users Create
    Put /users/auth Authenticate ( Token )
    Put /users/:id Update ( Token )
    Delete /users/:id Delete ( Token )
  • Orders

    HTTP Verb Endpoint CRUD
    Get /orders, Index ( Token )
    Get /orders/:id Read
    Post /orders Create
    Post /orders/:id/products Create ( Token )
    Delete /orders/:id/products Delete ( Token )

Built with

  • Typescript
  • Postgres
  • Node
  • Express
  • Dotenv
  • Db-migrate
  • Jsonwebtoken
  • Jasmine
  • Supertest

Author

Anis Benziane.