functional-nestjs
所属分类:前端开发
开发工具:TypeScript
文件大小:0KB
下载次数:0
上传日期:2022-05-01 15:58:55
上 传 者:
sh-1993
说明: 使用NestJS、Prisma进行函数编程。不可变、纯、无状态、,
(Functional Programming with NestJS, Prisma. immutable, pure, stateless,)
文件列表:
.eslintrc.js (954, 2022-05-01)
.prettierrc (204, 2022-05-01)
docs/ (0, 2022-05-01)
docs/1.integration-prisma.md (6288, 2022-05-01)
docs/2.crud-api.md (7326, 2022-05-01)
nest-cli.json (118, 2022-05-01)
package.json (2359, 2022-05-01)
prisma/ (0, 2022-05-01)
prisma/migrations/ (0, 2022-05-01)
prisma/migrations/20220424101558_init/ (0, 2022-05-01)
prisma/migrations/20220424101558_init/migration.sql (885, 2022-05-01)
prisma/migrations/20220424193711_add_user_active/ (0, 2022-05-01)
prisma/migrations/20220424193711_add_user_active/migration.sql (86, 2022-05-01)
prisma/migrations/migration_lock.toml (126, 2022-05-01)
prisma/schema.prisma (714, 2022-05-01)
prisma/seed/ (0, 2022-05-01)
prisma/seed/index.ts (347, 2022-05-01)
prisma/seed/user.seed.ts (555, 2022-05-01)
src/ (0, 2022-05-01)
src/app.module.ts (231, 2022-05-01)
src/main.ts (468, 2022-05-01)
src/prisma/ (0, 2022-05-01)
src/prisma/prisma.module.ts (226, 2022-05-01)
src/prisma/prisma.service.spec.ts (504, 2022-05-01)
src/prisma/prisma.service.ts (567, 2022-05-01)
src/user/ (0, 2022-05-01)
src/user/dto/ (0, 2022-05-01)
src/user/dto/create_user.dto.ts (203, 2022-05-01)
src/user/dto/delete_user.dto.ts (242, 2022-05-01)
src/user/dto/get_user.dto.ts (239, 2022-05-01)
src/user/dto/update_user.dto.ts (337, 2022-05-01)
src/user/test/ (0, 2022-05-01)
src/user/test/seed/ (0, 2022-05-01)
src/user/test/seed/user.seed.ts (667, 2022-05-01)
src/user/test/user.repository.spec.ts (2730, 2022-05-01)
src/user/user.controller.ts (1144, 2022-05-01)
src/user/user.module.ts (394, 2022-05-01)
src/user/user.repository.ts (973, 2022-05-01)
... ...
# Functional-NestJS
Functional Programming with NestJS, Prisma.
immutable, pure, stateless.
## 1. Introduction
A production ready typescript backend repository utilized those libraries:
- [NestJS](https://nestjs.com) : A progressive Node.js framework
- [Prisma](https://www.prisma.io/) : Next-generation Node.js and TypeScript ORM
- [eslint-plugin-functional](https://github.com/jonaskello/eslint-plugin-functional) disable mutation and promote functional programming lint.
## 2. Curriculum
### 2.1 Goal
- Developing a production-ready API with NestJS + Prisma.
- Learning functional-programming with Typescript.
## 3. Contents
|index | Name | start-branch |complete-branch |docs
|-------|-----------------------------------------|----------------------------------------------------------------------------------------------------------|-----------------------------------------------------------------------------------------------------|------------------------------------------------------------------------------------------------------------------------------------|
|0 |Setup and integraion Prisma with nestJS |[start/integration-prisma](https://github.com/ltnscp9028/functional-nestjs/tree/start/integration/prisma) |[integration-prisma](https://github.com/ltnscp9028/functional-nestjs/tree/integration/prisma) |[docs/integration-prisma](https://github.com/ltnscp9028/functional-nestjs/blob/main/docs/1.integration-prisma.md) |
|1 |REST API with type-safe validator |[start/crud-API](https://github.com/ltnscp9028/functional-nestjs/tree/start/crudAPI) |[crud-API](https://github.com/ltnscp9028/functional-nestjs/tree/crudAPI) |[docs/crud-API](https://github.com/ltnscp9028/functional-nestjs/blob/main/docs/2.crud-api.md) |
|2 |Handling Prisma Exception |@TODO |@TODO |@TODO |
|3 |Authorization |@TODO |@TODO |@TODO |
|4 |Relation Data Structure |@TODO |@TODO |@TODO |
|5 |Use functional in API |@TODO |@TODO |@TODO |
|6 |Use functional in conditional type |@TODO |@TODO |@TODO |
|INF |More Contents. |@TODO |@TODO |@TODO |
* * *
### 3.1. Setup and integraion Prisma with nestJS
- 1. Initialize prisma
- 2. First prisma migration
- 3. Implement prisma service
- 4. Use prisma for /users api
- 5. Implement explicit prisma connect
### 3.2 REST API with type-safe validator
- 1. Implement user.validator
- 2. Implement: createUser
- 3. Implement: getOneUser
- 4. Implement: updateUser
- 5. Implement: deleteUser
- 6. Implement: transform string to number use globalPipe
近期下载者:
相关文件:
收藏者: