magicbox-node-dev规范

Node.js + TypeScript 项目开发规范和最佳实践指南。用于指导 MagicBox Node 服务的开发、代码风格、目录结构、配置管理、容器部署等方面的规范。

Safety Notice

This listing is from the official public ClawHub registry. Review SKILL.md and referenced scripts before running.

Copy this and send it to your AI assistant to learn

Install skill "magicbox-node-dev规范" with this command: npx skills add JinChunCheng123/magicbox-node-dev

MagicBox Node 项目开发规范

项目结构

目录结构

magicbox-node/
├── src/             # 源代码目录
│   ├── config/      # 配置文件
│   ├── controllers/ # 控制器
│   ├── middleware/  # 中间件
│   ├── migrations/  # 数据库迁移
│   ├── models/      # 数据模型
│   ├── routes/      # 路由
│   ├── services/    # 业务逻辑
│   ├── utils/       # 工具函数
│   └── app.ts       # 应用入口
├── scripts/         # 脚本文件
├── servers/         # 服务器配置
├── .env.example     # 环境变量示例
├── .eslintrc.js     # ESLint 配置
├── .prettierrc      # Prettier 配置
├── Dockerfile.base  # Docker 基础镜像
├── package.json     # 项目配置
└── tsconfig.json    # TypeScript 配置

代码规范

TypeScript 规范

  1. 类型定义:使用强类型,避免 any 类型
  2. 接口命名:使用 PascalCase,如 UserInterface
  3. 类命名:使用 PascalCase,如 UserService
  4. 函数命名:使用 camelCase,如 getUser
  5. 变量命名:使用 camelCase,如 userName
  6. 常量命名:使用 UPPER_CASE,如 MAX_RETRY_COUNT

ESLint 配置

项目使用 ESLint 进行代码质量检查,配置文件:.eslintrc.js

Prettier 配置

项目使用 Prettier 进行代码格式化,配置文件:.prettierrc

配置管理

环境变量

  • 开发环境:使用 .env.develop 文件
  • 生产环境:使用 /etc/magicbox-node/env.config.json 文件
  • 环境变量优先级:系统环境变量 > 配置文件 > 默认值

配置文件结构

{
  "NODE_ENV": "production",
  "PORT": "3000",
  "HOST": "0.0.0.0",
  "DB_HOST": "database-host",
  "DB_PORT": "3306",
  "DB_DATABASE": "magicbox",
  "DB_USERNAME": "username",
  "DB_PASSWORD": "password"
}

数据库规范

数据模型

  • 使用 TypeORM 进行数据库操作
  • 模型文件放在 src/models/ 目录
  • 实体命名使用 PascalCase,如 UserEntity.ts

数据库迁移

  • 迁移文件放在 src/migrations/ 目录
  • 迁移文件命名格式:YYYYMMDDHHmmss-description.ts

容器部署

Docker 配置

  • 使用 Dockerfile.base 构建基础镜像
  • 容器运行时环境变量通过 Kubernetes 配置
  • 确保容器启动时目录存在:/export/Data

启动脚本

  • start.sh:容器启动脚本
  • scripts/deploy-manual.sh:部署时版本管理脚本

版本管理

  • 使用 version.json 文件管理版本信息
  • 版本号格式:major.minor.patch
  • 部署时自动更新版本信息

API 规范

路由结构

  • 健康检查:/health
  • API 路由:/api/{resource}
  • 遵循 RESTful 设计原则

响应格式

{
  "success": true,
  "data": {},
  "message": "操作成功"
}

日志规范

  • 使用 src/utils/logger.ts 进行日志记录
  • 日志级别:debug, info, warn, error
  • 生产环境使用 info 级别

错误处理

  • 使用统一的错误处理中间件
  • 生产环境不返回详细错误信息
  • 记录错误日志

安全规范

  • 敏感配置使用环境变量
  • 密码等敏感信息不硬编码
  • 使用 HTTPS 协议
  • 实现 CORS 配置

部署流程

  1. 代码提交到 Git 仓库
  2. 运行 scripts/deploy-manual.sh 更新版本
  3. 构建 Docker 镜像
  4. 部署到 Kubernetes 集群
  5. 验证服务健康状态

开发工具

  • IDE:推荐使用 VS Code
  • 插件:ESLint, Prettier, TypeScript
  • 包管理器:npm
  • 构建工具:TypeScript compiler (tsc)

代码审查

  • 提交代码前运行 npm run lint
  • 提交代码前运行 npm run build
  • 代码审查关注:类型定义、错误处理、安全隐患

性能优化

  • 使用 TypeScript 编译优化
  • 数据库查询优化
  • 缓存策略
  • 合理使用中间件

监控与告警

  • 实现健康检查端点
  • 监控服务运行状态
  • 配置适当的告警机制

最佳实践

  1. 模块化:将功能拆分为小模块
  2. 可测试性:编写可测试的代码
  3. 文档:为关键功能添加注释
  4. 一致性:保持代码风格一致
  5. 安全性:优先考虑安全问题
  6. 性能:关注代码性能
  7. 可维护性:编写易于维护的代码

Source Transparency

This detail page is rendered from real SKILL.md content. Trust labels are metadata-based hints, not a safety guarantee.

Related Skills

Related by shared tags or category signals.

Coding

Agent Dev Workflow

Orchestrate coding agents (Claude Code, Codex, etc.) to implement coding tasks through a structured workflow. Use when the user gives a coding requirement, f...

Registry SourceRecently Updated
Coding

Cortex Engine

Persistent cognitive memory for AI agents — query, record, review, and consolidate knowledge across sessions with spreading activation, FSRS scheduling, and...

Registry SourceRecently Updated
Coding

Skill Blocker - 安全守卫

Blocks execution of dangerous commands and risky operations like destructive deletions, credential theft, code injection, and unauthorized system changes to...

Registry SourceRecently Updated
014
Profile unavailable