Данный проект реализовывает расширяемую систему, которая имеет функционал над балансом пользователя
.
\---src
| app.module.ts
| main.ts
|
+---application
| decrease-item.use-case.ts # use-case оркестрант для списания покупки с баланса пользователя
|
+---core
| \---entity
| transaction-history.entity.ts # сущность операции
| user.entity.ts # сущность пользователя
|
+---infrastructure
| +---controller
| | user-purchase.controller.ts # rest контроллер для входящего запроса
| |
| +---database
| | typeorm.config.service.ts # конфиг orm
| |
| +---dto
| | decreaseBalance.dto.ts
| |
| +---models
| | transaction.typeorm.model.ts # модель для orm
| | user.typeorm.model.ts # ~~
| |
| \---service
| transaction.typeorm.service.ts # реализация для typeorm
| user.typeorm.service.ts # ~~
|
\---modules
transaction.module.ts
user.module.ts
| .env
| .gitignore
| .prettierrc
| eslint.config.mjs
| nest-cli.json
| package-lock.json
| package.json
| README.md
| tsconfig.build.json
| tsconfig.json
$ npm install
# development
$ npm run start
# watch mode
$ npm run start:dev
# production mode
$ npm run start:prod