🐈NestJS
NestJS 核心概念、数据库与 ORM、配置缓存认证、日志监控、部署运维、微服务与 GraphQL、WebSocket 与项目实战
核心概念
- 01-Nest 基础概念扫盲
- 02-快速掌握 Nest CLI
- 03-5 种 HTTP 数据传输方式
- 04-IoC 解决了什么痛点问题
- 05-如何调试 Nest 项目
- 06-使用多种 Provider,灵活注入对象
- 07-全局模块和生命周期
- 08-AOP 架构有什么好处
- 09-一网打尽 Nest 全部装饰器
- 10-Nest 如何自定义装饰器
- 11-Metadata 和 Reflector
- 12-ExecutionContext:切换不同上下文
- 13-Module 和 Provider 的循环依赖怎么处理
- 14-如何创建动态模块
- 15-Nest 和 Express 的关系,如何切到 fastify
- 16-Nest 的 Middleware
- 17-RxJS 和 Interceptor
- 18-内置 Pipe 和自定义 Pipe
- 19-如何使用 ValidationPipe 验证 post 请求参数
- 20-如何自定义 Exception Filter
- 21-图解串一串 Nest 核心概念
- 22-接口如何实现多版本共存
- 23-Express 如何使用 multer 实现文件上传
- 24-Nest 如何使用 multer 实现文件上传
图书管理系统
日志与部署
- 01-大文件分片上传
- 02-最完美的 OSS 上传方案
- 03-Nest 里如何打印日志
- 04-为什么 Node 里要用 Winston 打印日志
- 05-Nest 集成日志框架 Winston
- 06-通过 Desktop 学 Docker 也太简单了
- 07-你的第一个 Dockerfile
- 08-Nest 项目如何编写 Dockerfile
- 09-提升 Dockerfile 水平的 5 个技巧
- 10-Docker 是怎么实现的
- 11-为什么 Node 应用要用 PM2 来跑
- 12-为什么要使用 Docker Compose
- 13-Docker 容器通信的最简单方式:桥接网络
- 14-Docker 支持重启策略,是否还需要 PM2
- 15-Docker容器化部署前端项目实战
- 16-Docker镜像构建优化实战
- 17-Docker安全性与命令实践指南
- 18-NestJS容器化部署实战
MySQL与TypeORM
- 01-快速入门 MySQL
- 02-SQL 查询语句的所有语法和函数
- 03-一对一、join 查询、级联方式
- 04-一对多、多对多关系的表设计
- 05-子查询和 EXISTS
- 06-SQL 综合练习
- 07-MySQL 的事务和隔离级别
- 08-MySQL 的视图、存储过程和函数
- 09-使用 Node 操作 MySQL 的两种方式
- 10-快速掌握 TypeORM
- 11-TypeORM 一对一的映射和关联 CRUD
- 12-TypeORM 一对多的映射和关联 CRUD
- 13-TypeORM 多对多的映射和关联 CRUD
- 14-在 Nest 里集成 TypeORM
- 15-TypeORM 如何保存任意层级的关系
- 16-为什么生产环境要用 TypeORM 的 migration 迁移功能
- 17-Nest 项目里如何使用 TypeORM 迁移
配置缓存与认证
- 01-如何动态读取不同环境的配置
- 02-快速入门 Redis
- 03-在 Nest 里操作 Redis
- 04-为什么不用 cache-manager 操作 Redis
- 05-两种登录状态保存方式:JWT、Session
- 06-Nest 里实现 Session 和 JWT
- 07-MySQL + TypeORM + JWT 实现登录注册
- 08-基于 ACL 实现权限控制
- 09-基于 RBAC 实现权限控制
- 10-基于 access_token 和 refresh_token 实现登录状态无感刷新
- 11-单 token 无限续期,实现登录状态无感刷新
- 12-使用 passport 做身份认证
- 13-passport 实现 GitHub 三方账号登录
- 14-passport 实现 Google 三方账号登录
Nginx与中间件
文档与实用功能
- 01-用 Swagger 自动生成 api 文档
- 02-如何灵活创建 DTO
- 03-class- validator 的内置装饰器,如何自定义装饰器
- 04-序列化 Entity,你不需要 VO 对象
- 05-手写序列化 Entity 的拦截器
- 06-使用 compodoc 生成文档
- 07-Node 如何发邮件
- 08-实现基于邮箱验证码的登录
- 09-定时任务 + Redis 实现阅读量计数
- 10-Nest 的 3 种定时任务
- 11-Nest 里如何实现事件通信
- 12-HttpModule + pinyin 实现天气预报查询服务
- 13-如何记录请求日志
- 14-短链服务自己写一个
- 15-Nest 实现 Server Sent Event 数据推送
- 16-用 minio 自己搭一个 OSS 服务
- 17-前端如何直传文件到 Minio
- 18-基于 sharp 实现 gif 压缩工具
- 19-大文件如何实现流式下载
- 20-Puppeteer 实现爬虫,爬取 BOSS 直聘全部前端岗位
- 21-实现扫二维码登录
- 22-Nest 的 REPL 模式
- 23-实现 Excel 导入导出
- 24-如何用代码动态生成 PPT
- 25-如何拿到服务器 CPU、内存、磁盘状态
- 26-Nest 如何实现国际化
会议室预订系统
- 01-会议室预订系统:需求分析和原型图
- 02-会议室预订系统:技术方案和数据库设计
- 03-会议室预订系统:用户管理模块--用户注册
- 04-会议室预订系统:用户管理模块--配置抽离、登录认证鉴权
- 05-会议室预订系统:用户管理模块-- interceptor、修改信息接口
- 06-会议室预订系统:用户管理模块--用户列表和分页查询
- 07-会议室预订系统:用户管理模块-- swagger 接口文档
- 08-会议室预订系统:用户管理模块-- 用户端登录注册页面
- 09-会议室预订系统:用户管理模块-- 用户端信息修改页面
- 10-会议室预订系统:用户管理模块-- 头像上传
- 11-会议室预订系统:用户管理模块-- 管理端用户列表页面
- 12-会议室预订系统:用户管理模块-- 管理端信息修改页面
- 13-会议室预订系统:会议室管理模块-后端开发
- 14-会议室预订系统:会议室管理模块-管理端前端开发
- 15-会议室预订系统:会议室管理模块-用户端前端开发
- 16-会议室预订系统:预定管理模块-后端开发
- 17-会议室预订系统:预定管理模块-管理端前端开发
- 18-会议室预订系统:预定管理模块-用户端前端开发
- 19-会议室预订系统:统计管理模块-后端开发
- 20-会议室预订系统:统计管理模块-前端开发
- 21-会议室预订系统:后端项目部署到阿里云
- 22-会议室预订系统:前端项目部署到阿里云
- 23-会议室预定系统:用 migration 初始化表和数据
- 24-会议室预定系统:文件上传 OSS
- 25-会议室预定系统:Google 账号登录后端开发
- 26-会议室预定系统:Google 账号登录前端开发
- 27-会议室预定系统:后端代码优化
- 28-会议室预定系统:集成日志框架 winston
- 29-会议室预定系统:前端代码优化
- 30-会议室预定系统:全部功能测试
- 31-会议室预定系统:项目总结
微服务与Prisma
- 01-Nest 如何创建微服务
- 02-Nest 的 Monorepo 和 Library
- 03-用 Etcd 实现微服务配置中心和注册中心
- 04-Nest 集成 Etcd 做注册中心、配置中心
- 05-用 Nacos 实现微服务配置中心和注册中心
- 06-基于 gRPC 实现跨语言的微服务通信
- 07-快速入门 ORM 框架 Prisma
- 08-Prisma 的全部命令
- 09-Prisma 的全部 schema 语法
- 10-Primsa Client 单表 CRUD 的全部 api
- 11-Prisma Client 多表 CRUD 的全部 api
- 12-在 Nest 里集成 Prisma
- 13-Prisma实体关系定义详解
- 14-Prisma版本升级指南
- 15-Prisma数据库同步与迁移命令详解
考试系统
WebSocket与聊天室
- 01-用 Node.js 手写 WebSocket 协议
- 02-Nest 开发 WebSocket 服务
- 03-基于 Socket.io 的 room 实现群聊
- 04-聊天室:需求分析和原型图
- 05-聊天室:技术选型和数据库设计
- 06-聊天室:用户注册
- 07-聊天室:用户登录
- 08-聊天室:修改密码、修改信息
- 09-聊天室:好友列表、发送好友申请
- 10-聊天室:创建聊天室、加入群聊
- 11-聊天室:登录、注册页面开发
- 12-聊天室:修改密码、信息页面开发
- 13-聊天室:头像上传
- 14-聊天室:好友∕群聊列表页面
- 15-聊天室:添加好友弹窗、通知页面
- 16-聊天室:聊天功能后端开发
- 17-聊天室:聊天功能前端开发
- 18-聊天室:一对一聊天
- 19-聊天室:创建群聊、进入群聊
- 20-聊天室:发送表情、图片、文件
- 21-聊天室:收藏
- 22-聊天室:全部功能测试
- 23-聊天室:项目总结
MongoDB与GraphQL
项目实战
系统课程
- 1-NestJS应用场景分析
- 2-NestJS框架对比与架构优势
- 3-NestJS CLI工具使用指南
- 4-NestJS工程目录与代码规范
- 5-NestJS控制器与RESTful接口开发
- 6-Node.js与NestJS调试实战
- 7-FP与OOP编程范式入门
- 8-AOP面向切面编程
- 9-IOC控制反转与DI依赖注入
- 10-NestJS核心概念与请求生命周期
- 11-NestJS模块化架构
- 12-MVC架构与DTO-DAO概念
- 13-NestJS依赖注入工作原理
- 14-接口服务开发流程与核心概念映射
- 15-数据库基础概念与设计
- 16-数据库核心概念详解
- 17-数据库设计三大范式
- 18-ER图设计与实战
- 19-数据库详细设计与实战
- 20-ORM对象关系映射详解
- 21-Prisma集成与Docker部署PostgreSQL
- 22-Prisma在NestJS中的完整集成
- 23-NestJS日志系统与Winston集成
- 24-NestJS开发工具扩展
- 25-NestJS工作原理与装饰器详解
- 26-NestJS业务接口开发与API版本控制
- 27-NestJS业务逻辑层与Prisma详解
- 28-NestJS从Controller到数据库完整链路实现
- 29-NestJS数据校验管道ValidationPipe详解
- 30-NestJS新增功能与DTO数据校验实战
- 31-NestJS完整CRUD操作实现
- 32-Prisma实体关系定义详解
- 33-Prisma版本升级指南从4到5
- 34-Prisma数据库同步与迁移命令详解
- 35-NestJS REPL模式调试与数据插入实战
- 36-NestJS创建课程与嵌套插入实战
- 37-NestJS嵌套数据校验详解
- 38-NestJS多表联合查询与数据排序实战
- 39-NestJS分页查询与数据校验实战
- 40-NestJS自定义校验装饰器详解
- 41-NestJS课程筛选与数组参数传递实战
- 42-NestJS数据结构化与BigInt序列化实战
- 43-NestJS数据脱敏与敏感数据处理实战
- 44-NestJS前后端接口对接实战
- 45-NestJS Mock数据配置与接口白名单实战
- 46-课程列表页面与接口对接实战
- 47-前端项目打包与部署实战
- 48-SSR项目部署实战
- 49-Docker容器化部署前端项目实战
- 50-Docker镜像构建优化实战
- 51-Docker安全性与命令实践指南
- 52-NestJS容器化部署实战
- 53-rsync与GitHooks自动化部署实战