Skip to content

A backend API project using Nestjs that uses Microservices architecture built with RabbitMQ, NoSQL database such as MongoDB to persist data and Docker for containerising the application.

Notifications You must be signed in to change notification settings

deepakkashyap3013/Ordering-app

Repository files navigation

About the Application

A backend API project using Nestjs that uses Microservices architecture built with RabbitMQ, NoSQL database such as MongoDB to persist data and Docker for containerising the application.

Purpose of building the App :

    To learn

  • Scalable Microservice architecture and reduce repeatativeness in code for cleaner Codebase
  • Authentication using JWT tokens, create cookies and session for current user
  • To Secure routes using various Strategies
  • Containerised development of application using Docker

Installation

$ npm install

Running the app

Prerequisites

Make sure to have Docker installed in your machine. To istall Docker please refer here

Once Docker installation is successfull head over to next step!!

# development
$ docker-compose up --build -V

This would pull the necessary docker images from dockerhub and start the docker containers

API references

POST http://localhost:3001/auth/users

Request BODY:
{
  "email":"some@email.com",
  "password":"some-password"
}
POST http://localhost:3001/auth/login

Request BODY:
{
  "email":"some@email.com",
  "password":"some-password"
}
POST http://localhost:3000/orders

Request BODY:
{
  "name":"some-product-name",
  "price":0.00,
  "phoneNumber":"+301111111111"
}
GET http://localhost:3000/orders

Response Type:
[
  {
  "name":"some-product-name-1",
  "price":0.00,
  "phoneNumber":"+301111111123"
  },
  {
  "name":"some-product-name-2",
  "price":0.00,
  "phoneNumber":"+301111111234"
  },
  .
  .
  .,
  {
  "name":"some-product-name-N",
  "price":0.00,
  "phoneNumber":"+301111111111"
  }
]

About

A backend API project using Nestjs that uses Microservices architecture built with RabbitMQ, NoSQL database such as MongoDB to persist data and Docker for containerising the application.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published