mcpField
N
nestjs-clean-typescript

nestjs-clean-typescript

github.com/mindrally开发287948 次安装3 周前更新
代码仓库

关于 nestjs-clean-typescript

面向使用 TypeScript 构建 NestJS API 的开发者,提供强类型、整洁代码和架构实践规范。还包括模块、持久化、验证与测试方面的 NestJS 专属建议。

主要功能

  1. 01显式类型与命名规范
  2. 02简短函数与不可变数据
  3. 03按领域划分 NestJS 模块
  4. 04MikroORM 持久化指导
  5. 05使用 class-validator 验证 DTO
  6. 06Jest 单元与端到端测试

适用场景

  1. 01按领域组织 NestJS API
  2. 02应用一致的 TypeScript 规范
  3. 03验证 API DTO
  4. 04规划单元及端到端测试

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/mindrally/skills --skill nestjs-clean-typescript

安装后在 Claude Code 中输入/nestjs-clean-typescript确认已加载。

详细介绍

NestJS 整洁 TypeScript

Alberto Basalo 编写的指南,旨在使用 TypeScript 开发整洁的 NestJS API。这些规则强调强类型、整洁代码原则和架构最佳实践。

TypeScript 通用原则

  • 始终声明每个变量和函数的类型(参数和返回值)
  • 避免使用 any;改为创建所需的类型
  • 为公共类和方法编写 JSDoc
  • 每个文件只导出一个内容

命名约定

  • 类使用 PascalCase
  • 变量和函数使用 camelCase
  • 文件和目录使用 kebab-case
  • 环境变量使用 UPPERCASE
  • 布尔变量使用以下前缀:isX、hasX、canX

函数设计

  • 编写用途单一的短函数。指令少于 20 条
  • 使用提前返回来避免嵌套
  • 应用 RO-RO 模式:多个参数以对象形式传递,结果以对象形式返回

数据与类

  • 使用 readonly 和 as const 优先保证数据不可变
  • 遵循 SOLID 原则
  • 类应满足以下要求:
    • 指令少于 200 条
    • 公共方法少于 10 个
    • 属性少于 10 个

NestJS 特定指南

  • 使用模块化架构,每个领域或路由对应一个模块
  • 使用 MikroORM 实体进行持久化
  • 每个实体对应一个服务
  • 使用 class-validator 验证 DTO
  • 在 core 模块中放置全局过滤器、中间件、守卫和拦截器

测试

  • 使用 Jest 框架
  • 遵循 Arrange-Act-Assert 约定
  • 为每个公共函数编写单元测试
  • 为每个 API 模块编写端到端测试

评论

支持 Markdown