35 lines
2.0 KiB
Markdown
35 lines
2.0 KiB
Markdown
# Repository Guidelines
|
||
|
||
## 项目结构与模块
|
||
- `src/main.js`:应用入口,注册 Element Plus、全局样式。
|
||
- `src/App.vue`:CRT 风格登录页,调用 `/login` 获取 JWT 与用户信息。
|
||
- `src/style.css`:全局字体与背景基调;保持单一来源的全局样式。
|
||
- `public/`:静态资源;`index.html` 仅包含挂载点与标题。
|
||
- `vite.config.js`:Vite 基础配置,如需别名或代理在此扩展。
|
||
|
||
## 构建、测试与开发命令
|
||
- `npm install`:安装依赖。
|
||
- `npm run dev`:本地开发,默认端口 5173。
|
||
- `npm run build`:生产构建,输出到 `dist/`。
|
||
- `npm run preview`:本地预览构建产物。
|
||
|
||
## 编码风格与命名
|
||
- 使用 Vue 3 SFC,组件文件 PascalCase(例:`LoginPanel.vue`),组合式函数 camelCase。
|
||
- 缩进 2 空格,优先使用 const;必要时加少量行内注释说明意图。
|
||
- 样式保持 CRT 终端基调,变量命名语义化;若扩展组件样式,优先复用 Element Plus 变量或类。
|
||
- 资源/路径使用相对路径,避免硬编码绝对 URL。
|
||
|
||
## 环境与配置
|
||
- 后端基址通过环境变量 `VITE_API_BASE` 配置,默认 `http://localhost:8000/api`。开发时可在 `.env.local` 设置。
|
||
- 接口认证遵循 JWT Bearer:`Authorization: Bearer <token>`。
|
||
|
||
## 测试指引
|
||
- 一律以 TDD 推进:先写失败的测试,再实现功能,再回到绿色。若暂缺框架,请先搭建再编码。
|
||
- 单元测试推荐 Vitest;端到端测试推荐 Playwright。新功能或改动必须附带测试覆盖正/反路径。
|
||
- 测试命名:`*.spec.ts|js`,按功能域分目录;保证可通过 `npm test` 或相应命令运行。
|
||
|
||
## 提交与 Pull Request
|
||
- 提交信息使用祈使句简述变更(例:`add login error display`),中文/英文均可,但保持简洁。
|
||
- PR 应包含:变更目的、主要修改点、测试结果;涉及 UI 需附关键截图或录屏。
|
||
- 保持小而可审的提交;引用关联 issue 时使用 `#ID`。
|