Order Management System (OMS) is an API that allows users to manage their orders, carts, and products within an e-commerce mobile app. It provides CRUD operations for users, products, orders, and cart management.
https://www.youtube.com/watch?v=dCHf8gvBj6Y
Before getting started, ensure you have installed the following:
- Node.js and npm
- PostgreSQL
- Clone the repository:
$ git clone git@github.com:MohamedAEmara/Order-Management-System.git
- Install dependencies:
$ npm install
- Configure environment variables: Create a
.env
file in the root directory.- Copy
.env.example
content to.env
file - Add values for environment variables
DATABASE_URL="postgresql://username:password@localhost:5432/database_name?schema=public" SECRET="SOME_SECRET_VALUE"
- Copy
- Migrate Prisma schema to the database by running these commands:
$ npx prisma generate $ npx prisma migrate dev --name init
You can check endpoints & documentation on Postman from here
The Order Management System uses the following technologies and tools:
- NestJS: A progressive Node.js framework for building efficient, reliable, and scalable server-side applications.
- PostgreSQL: A powerful, open-source relational database used for storing users, products, orders, and cart information.
- Prisma: A modern database toolkit and ORM for Node.js and TypeScript.
- Docker: A platform for developing, shipping, and running applications in isolated containers to ensure consistency across different environments.
- Postman: Used for documentation and to provide a collection for API requests.
- Git: A distributed version control system.
- GitHub: A web-based platform for version control and collaboration.
If you'd like to contribute to the project or have suggestions for improvement, please do not hesitate to make pull request.