Code of Conduct
编码规范
前端
1. 项目结构
在GitHub上建立私有仓库,并使用Vscode,装上Copilot插件,一定要经常使用GPT提升工作效率。
- README.md 以Markdown格式的项目说明书,简要介绍项目内容
- .env 环境变量文件,不要上传至仓库
- .gitignore 忽略的文件
- package.json npm使用的项目文件
- next.config.js nextjs的配置文件
- pages/ - 存放Next.js页面的目录。
- components/ - 存放React组件的目录。
- public/ - 存放静态资源的目录,如图片、字体等。
- src/ - 存放可复用的JavaScript和TypeScript代码。
- app/ - 存放服务层代码,如API调用等。
- styles/ - 存放CSS样式文件。
- tests/ - 存放单元测试文件。
2. Git Commit
提交应该遵循一定的规范https://www.conventionalcommits.org/en/v1.0.0/,一定要简要精炼写做了什么样的事儿。
- 类型: feat (新功能), fix (修复), docs (文档), style (格式), refactor (重构), test (测试), chore (构建过程或辅助工具的变动)
- 范围: 可选,表示影响的范围,如component, utils, build。
- 描述: 简明扼要的描述本次提交解决的问题。
- 示例: feat(login): 实现了登录的页面
- 修复某个错误(issue)在脚标写:Closes #1
3. 使用框架
- 使用Typescript编写页面,使用ES6以上的语法,注释需要遵循tsdoc的规范来标注。
- 使用Nextjs同构渲染框架,注意区分代码运行在服务端还是客户端。
- 使用React,常用的内容要解耦成可复用组件或库,注意组件的状态管理,并写上文档。
- 组件库选用Shadcn/UI+TailwindCSS,或者Antd。
- 数据库关系型选用MySQL,缓存数据库选用Redis,消息数据库选用RabbitMQ,可以使用typeorm与数据库交互。
- 数据验证使用class-validator和class-transformer。
- 使用Docker一键部署或测试。
- 使用Electron构建桌面应用程序,使用React Native构建移动端应用程序。
- 使用JWT存储登录状态。
4. 前后端交互
- 支持Restful和OpenAPI规范,并写上注释。
- 使用Swagger测试以及生成接口文档。
5. 国际化
- 不要硬编码字符串,使用i18n之类的语言框架,必须支持至少中英的多种语言。