Uniboot前端规约
《Uniboot前端规约》 是一套前端编码和工程规范,致力于通过统一编码风格、普及最佳实践和代码缺陷检查帮助团队降低协作成本、提升前端项目的可维护性和稳定性。
本规约主要包括规约文档和规约工具两部分。您可以通过阅读规约文档了解各前端语言、框架及工程规范,并使用 等配套工具来为项目接入规约检查。
规约文档帮助您理解规约细节并编写高质量的代码。规约文档包括:
规约工具帮助您将代码检查能力快速集成到项目中。规约工具包括:
| 包名 | 用途 | 文档 |
|---|---|---|
@uniboot/eslint-config | ESLint 9+ Flat Config,工厂 defineConfig | ESLint |
@uniboot/stylelint-config | Stylelint 默认;Vue / HTML 与 SCSS 的 overrides 已内置 | Stylelint |
@uniboot/oxlint-config | Oxlint 工厂 defineConfig,与 oxlint 自带 defineConfig 兼容 | Oxlint |
@uniboot/oxfmt-config | Oxfmt 工厂 defineConfig,含团队基线 | Oxfmt |
@uniboot/commitlint-config | Commitlint + 与 monorepo 范围相关的增强(基于 conventional commits) | Commitlint |
@uniboot/markdownlint-config | Markdownlint 预设,提供可共享的 Markdown 规则配置 | Markdownlint |
@uniboot/cspell-config | CSpell 拼写检查预设,提供可共享的通用词典配置 | CSpell |
@uniboot/tsconfig | TypeScript JSON 预设:base、web、web-app、vue-app、node、library | TypeScript |
安装方式
每个包按需安装即可,包名与上表 name 一致:
bash
pnpm add -D @uniboot/eslint-config eslint
pnpm add -D @uniboot/stylelint-config stylelint
pnpm add -D @uniboot/oxlint-config oxlint
pnpm add -D @uniboot/oxfmt-config oxfmt
pnpm add -D @uniboot/commitlint-config @commitlint/cli
pnpm add -D @uniboot/markdownlint-config markdownlint
pnpm add -D @uniboot/cspell-config cspell
pnpm add -D @uniboot/tsconfig各工具的 本体(eslint、stylelint、oxlint、oxfmt、@commitlint/cli、markdownlint、cspell、typescript)由项目自行安装;预设包的 peerDependencies 多标为 optional,按实际启用的能力安装。
单条规约格式说明
规约级别和对应的 Lint 规则
根据约束力强弱,一条规约依次分为强制、推荐、参考三个级别:
强制: 必须遵守。是不得不遵守的约定,违反本约定或将会引起严重的后果。如有对应 Lint 规则,配套规则包中级别为error。推荐: 尽量遵守。长期遵守这样的规定,有助于系统稳定性和合作效率的提升。如有对应 Lint 规则,配套规则包中级别为warn。参考: 充分理解。技术意识的引导,是个人学习、团队沟通、项目合作的方向。如有对应 Lint 规则,配套规则包中默认为off或不支持。
一条规约的级别会在规约描述的开头标注,如有对应的 Lint 规则会在结尾标注,例如:
1.1.1
强制使用 2 个空格缩进。eslint: indent
代码示例
为了更加直观,规约描述之后通常会配上代码示例,例如:
js
// bad
function foo() {
∙∙∙∙let name;
}
// good
function foo() {
∙∙let name;
}bad表示不推荐的用法good表示推荐的用法- 空格有时候会被
∙替代以方便计数