A progressive Node.js framework for building efficient and scalable server-side applications.
Nest framework TypeScript starter repository.
This project is a fully-featured eCommerce system built with NestJS and MongoDB, designed to be scalable and modular to meet the needs of modern online stores. The application is structured with multiple modules to efficiently manage different components of the platform.
- User Management (User Module): Register, update, and manage user profiles with role-based access control.
- Authentication (Auth Module): Secure login and registration system using JWT.
- Category & Subcategory Management: Create and manage product categories and subcategories.
- Brand Management (Brand Module): Add and manage brand information.
- Product Management (Product Module): Add, update, and manage products with inventory tracking.
- Reviews & Cart (Review & Cart Modules): Product reviews and shopping cart functionality.
- Order Management (Order Module): Handle order processing and payments using Stripe with Webhook integration for real-time updates.
- Tax & Shipping (Tax & Shipping Modules): Calculate taxes and shipping costs based on user location.
- Coupons (Coupon Module): Create and manage discount codes.
- Supplier Management (Supplier Module): Manage supplier details and product sourcing.
The project uses Stripe API for secure payment processing, with Webhooks integration to track payment statuses and order updates in real-time.
- Backend: NestJS (TypeScript)
- Database: MongoDB
- Authentication: JWT (JSON Web Tokens)
- Payment Integration: Stripe & Webhooks
- Dependency Injection: Built on NestJS's powerful DI system for easy testing and service management.
- Clone the repository:
git clone https://github.com/HadyHashiam/0V3-nest.git cd repo-name - Install dependencies:
npm install
- Setup environment variables:
- Create a
.envfile and add your MongoDB connection string and Stripe API keys.
- Create a
- Run the development server:
npm run start:dev
- Ensure you update Stripe Webhook settings when changing your server URL.
- The system is designed for easy scalability, allowing you to add or modify features as needed.
$ npm install# development
$ npm run start
# watch mode
$ npm run start:dev
# production mode
$ npm run start:prod# unit tests
$ npm run test
# e2e tests
$ npm run test:e2e
# test coverage
$ npm run test:covWith Mau, you can deploy your application in just a few clicks, allowing you to focus on building features rather than managing infrastructure.
Check out a few resources that may come in handy when working with NestJS:
- Visit the NestJS Documentation to learn more about the framework.
- For questions and support, please visit our Discord channel.
- To dive deeper and get more hands-on experience, check out our official video courses.
- Deploy your application to AWS with the help of NestJS Mau in just a few clicks.
- Visualize your application graph and interact with the NestJS application in real-time using NestJS Devtools.
- Need help with your project (part-time to full-time)? Check out our official enterprise support.
- To stay in the loop and get updates, follow us on X and LinkedIn.
- Looking for a job, or have a job to offer? Check out our official Jobs board.
Nest is an MIT-licensed open source project. It can grow thanks to the sponsors and support by the amazing backers. If you'd like to join them, please read more here.
- Author - Kamil Myśliwiec
- Website - https://nestjs.com
- Twitter - @nestframework
Nest is MIT licensed.