代码规范
TypeScript
- 使用
strict模式 - 优先使用
interface而非type(除非需要联合类型) - 导出的公共 API 必须有类型签名
命名约定
| 类型 | 风格 | 示例 |
|---|---|---|
| 文件 | kebab-case | message-api.ts |
| 类 | PascalCase | NapCatClient |
| 函数/变量 | camelCase | sendMessage |
| 常量 | UPPER_SNAKE_CASE | MAX_RETRY |
| 接口 | PascalCase(无 I 前缀) | TransportOptions |
模块组织
- 每个功能模块一个目录
- 目录内包含
index.ts作为公共导出 - 内部实现放在
internal/或直接与模块文件同级
ESLint & Prettier
所有项目使用统一的 ESLint 扁平配置与 Prettier 配置。在提交前 Husky 会自动运行检查。