Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/alideweb/shop-center

online shop backend app developed by nestjs ;)
https://github.com/alideweb/shop-center

Last synced: about 1 month ago
JSON representation

online shop backend app developed by nestjs ;)

Awesome Lists containing this project

README

        


Nest Logo

# Shop Center ๐ŸŽ‰

Welcome to Shop Center โ€“ an open-source e-commerce backend built with NestJS ๐Ÿš€. This project aims to provide a powerful, scalable, and clean architecture for your online store! ๐Ÿ’ป๐Ÿ›’

## Features โœจ

* Fully customizable ๐Ÿ› ๏ธ
* Order management ๐Ÿ“ฆ
* Product management ๐Ÿท๏ธ
* User authentication ๐Ÿ”‘
* Cart management ๐Ÿ›๏ธ
* Payment integration ๐Ÿ’ณ
* RESTful API ๐Ÿ“ก
* Integration and unit tests ๐Ÿงช
* Docker support ๐Ÿณ
* And much more! ๐ŸŒŸ

## Tech Stack ๐Ÿ› ๏ธ

* NestJS (Backend Framework) โš™๏ธ
* MongoDB (Database) ๐Ÿ—„๏ธ
* TypeScript (Language) ๐Ÿ–ฅ๏ธ
* Docker (Containerization) ๐Ÿ‹

## How to Get Started ๐Ÿš€

1. Clone this repository:

```bash
git clone https://github.com/AliDeWeb/Shop-Center.git
```

2. Install dependencies:

```bash
pnpm install
```

3. Set up your environment variables in .env (check .env.example for reference).

4. Run the development server:

```bash
pnpm run start:dev
```

5. Visit the API and start building your e-commerce platform! ๐ŸŒ

## Envs Example ๐Ÿช

```ts
NODE_ENV=development | production

PORT=3000

DB_URL="mongodb url"

JWT_SECRET_KEY=12345678
JWT_ACCESS_TOKEN_EXPIRES_IN=15m
JWT_ACCESS_REFRESH_EXPIRES_IN=7d

BCRYPT_SALT=10
```

before running e2e tests notice that you can edit `/test/test-utils.ts` file and change the test db uri.


if you set `NODE_ENV=development`, you'll be able to access swagger document in `host/document`.


you can download and import postman doc from `project-rootdir/postman`.

## Running Tests ๐Ÿงช

### This project includes both unit tests and integration tests to ensure the reliability and functionality of the application.

To run the tests, use the following command:

```bash
pnpm run test
```

For e2e tests, you can use:
```bash
pnpm run test:e2e
```

## Contributing ๐Ÿค

### This project is open source and contributions are always welcome! ๐Ÿ™Œ

If you're excited about creating a great shopping experience and have ideas to improve Shop Center, feel free to fork the repo, open an issue, or submit a pull request! Together, we can make this project even better! ๐Ÿ’ช

## License ๐Ÿ“œ
This project is licensed under the MIT License. See the LICENSE file for more details.

---

This version now includes Docker setup instructions and test running details. Let me know if you need any further adjustments!