codernew-api-frontend/AGENTS.md
gaoziman 4a6a0c2209 docs(项目文档): 添加项目指南和开发文档
- 添加 AGENTS.md 项目结构和开发指南
- 添加 CLAUDE.md AI辅助开发配置文档
- 更新 .gitignore 忽略 docs 和 .serena 目录
2025-11-18 21:20:10 +08:00

2.9 KiB
Raw Blame History

Repository Guidelines

项目结构与模块组织

  • src/ 存放核心前端代码:pages/ 管理业务页面(登录、用户管理、个人信息),components/ 复用组件,api/ 与后端交互封装,store/ 保存全局设置与标签页状态,utils/ 管理工具函数,mock/ 仅在本地调试启用。
  • docs/ 收录 API 对接与集成报告,提交前务必同步更新。
  • dist/pnpm run build 产物,禁止手动修改;.env.* 提供环境变量,请按需复制调整。

构建与开发命令

命令 说明
pnpm install 安装依赖,项目首选 pnpm若使用 npm需同步更新锁文件
pnpm run dev 启动 Vite 开发服务器,默认走 /api 代理到本地 8080。
pnpm run build 生成产物到 dist/,用于联调或上线前校验。
pnpm run preview 以本地静态服务验证构建结果。
pnpm run eslint / pnpm run stylelint 校验并自动修复 TS/TSX 与 Less。
pnpm run pre-commit 执行 pretty-quick、ESLint、StylelintPR 前必跑。

编码风格与命名

  • 语法统一使用 TypeScript + React 17 Hooks目录与文件采用小写连字符示例user-management)。
  • ESLint 继承 plugin:@typescript-eslint/recommendedplugin:react-hooks/recommendedPrettier 约定 2 空格缩进、单引号、强制分号。
  • 样式使用 Less + CSS Modules遵循 .module.less 命名Stylelint 规则在 .stylelintrc 中定义。

测试指引

  • 当前仓库尚未集成自动化测试;提交复杂功能时,需给出手工测试步骤,并优先在 src/__tests__(或相应页面目录)补充 *.spec.tsx
  • 覆盖重点:核心表单(登录、用户管理)与 API 适配层,可借助 Jest + @testing-library/react命名遵循 模块名.行为.spec.tsx

提交与 PR 规范

  • Commit 信息遵循 type(scope): 描述,与现有记录(如 feat(布局): ...style(导航栏): ...)保持一致,描述使用简体中文。
  • Pull Request 需包含:变更摘要、关联 Issue/需求编号、截图或命令输出、测试与 lint 结果;若改动 API 或配置,同步更新 docs/.env.* 示例。

安全与配置提示

  • .env.development 默认将 VITE_API_BASE_URL 指向 /api,生产环境务必更新为真实网关地址,避免调试代理泄漏。
  • Mock 入口在 src/main.tsx 引入,如需生产构建剔除,可通过环境变量包装 import './mock',防止将虚拟数据发布到线上。