Skip to content

Built with Nest.js & SpringBoot, Awesome Marketplace API is a RESTful API for an online marketplace that allows users to buy and sell products, manage their inventory and process orders.

Notifications You must be signed in to change notification settings

RedJanvier/awesomePlace

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

14 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

typescript

Awesome Marketplace API

  1. 🤖 Introduction
  2. ⚙️ Tech Stack
  3. 🔋 Features
  4. 🚀 Quick Start

Built with Nest.js & SpringBoot, Awesome Marketplace API is a RESTful API for an online marketplace that allows users to buy and sell products, manage their inventory and process orders.

  • Nest.js
  • TypeScript
  • Java
  • SpringBoot
  • Kafka
  • SendGrid
  • PostgreSQL

👉 Authentication: A dedicated service to manage authentication and authorization composed by user registration with email verification, login, refresh token and logout

👉 Products Service: Another separate service which is managing the products and their quantities in order to keep the inventory updated

👉 Management of orders: Receive, list and manage all orders is managed on a separate SpringBoot service that handles the order until it's completed

👉 Notifications: By the help of an external service (SendGrid) we send email verification link, order status update and more through a separate NestJS service.

👉 Orders History: View your history of orders which are ordered from recent to oldest.

👉 Async Communication: Different services are communicating asynchronously through Kafka as a broker which significantly improves the order processing and user management on register.

and many more, including code architecture and reusability.

Follow these steps to set up the project locally on your machine.

Prerequisites

Make sure you have the following installed on your machine:

Cloning the Repository

git clone https://github.com/redjanvier/awesome-marketplace-api.git
cd awesome-marketplace-api

Set Up Environment Variables

Create a new file named .env in the auth and notification services following the .env.example in the respective service.

Feel free to customize also the variable of JWT to match also in gateway which is handling authorization.

Build and Run the Project

docker-compose up --build

Open http://localhost:8080 in your browser to view the project.

About

Built with Nest.js & SpringBoot, Awesome Marketplace API is a RESTful API for an online marketplace that allows users to buy and sell products, manage their inventory and process orders.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published