Skip to content

Commit 9023a93

Browse files
committed
docs: groups and multi-languages
1 parent 590234e commit 9023a93

26 files changed

+7477
-188
lines changed

docs/README.md

+3-4
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
# 阿里巴巴前端规约
1+
# Alibaba Front-end Specification
22

33
## 前言
44

@@ -21,7 +21,6 @@
2121
- [文档通用规约](docs/engineering/2.doc-writing-practice.md)
2222
- [更新日志规约](docs/engineering/3.doc-changelog.md)
2323

24-
2524
## 单条规约格式说明
2625

2726
### 规约级别和对应的 Lint 规则
@@ -40,7 +39,7 @@
4039

4140
为了更加直观,规约描述之后通常会配上代码示例,例如:
4241

43-
```javascript
42+
```js
4443
// bad
4544
function foo() {
4645
∙∙∙∙let name;
@@ -56,7 +55,7 @@ function foo() {
5655

5756
除了 `bad``good`,有时你还会看到 `disallowed``allowed``best` 这几种注释,它们的含义如下:
5857

59-
```javascript
58+
```js
6059
// disallowed - 禁止(用于部分明令禁止的用法)
6160
// bad - 反例
6261
// allowed - 中例(用于允许但不推荐的用法)

docs/README.zh.md

+68
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,68 @@
1+
# 阿里巴巴前端规约
2+
3+
## 前言
4+
5+
「阿里巴巴前端规约」是在阿里经济体内广泛使用的一套前端编码和工程规范,致力于通过统一编码风格、普及最佳实践和代码缺陷检查帮助团队降低协作成本、提升前端项目的可维护性和稳定性。
6+
7+
「阿里巴巴前端规约」主要包括「规约文档」和「配套工具」两部分。你可以通过阅读规约文档了解各前端语言、框架及工程规范,并使用 [F2ELint](https://www.npmjs.com/package/f2elint) 等配套工具来为项目接入规约检查。
8+
9+
「规约文档」分为编码规约和工程规约两大类,包括:
10+
11+
- 编码规约
12+
- [HTML 编码规约](docs/coding/1.html-style-guide.md)
13+
- [CSS 编码规约](docs/coding/2.css-style-guide.md)
14+
- [JavaScript 编码规约](docs/coding/3.javascript-style-guide.md)
15+
- [React 编码规约](docs/coding/4.react-style-guide.md)
16+
- [Node.js 开发规约](docs/coding/5.node-style-guide.md)
17+
- [TypeScript 编码规约](docs/coding/6.typescript-style-guide.md)
18+
- [Rax 编码规约](docs/coding/7.rax-style-guide.md)
19+
- 工程规约
20+
- [Git 规约](docs/engineering/1.git.md)
21+
- [文档通用规约](docs/engineering/2.doc-writing-practice.md)
22+
- [更新日志规约](docs/engineering/3.doc-changelog.md)
23+
24+
## 单条规约格式说明
25+
26+
### 规约级别和对应的 Lint 规则
27+
28+
根据约束力强弱,一条规约依次分为强制、推荐、参考三个级别:
29+
30+
- 【强制】必须遵守。是不得不遵守的约定,违反本约定或将会引起严重的后果。如有对应 Lint 规则,配套规则包中级别为 `error`
31+
- 【推荐】尽量遵守。长期遵守这样的规定,有助于系统稳定性和合作效率的提升。如有对应 Lint 规则,配套规则包中级别为 `warn`
32+
- 【参考】充分理解。技术意识的引导,是个人学习、团队沟通、项目合作的方向。如有对应 Lint 规则,配套规则包中默认不开启,开发者可根据需要自行开启。
33+
34+
一条规约的级别会在规约描述的开头标注,如有对应的 Lint 规则会在结尾标注,例如:
35+
36+
- 1.1.1【强制】使用 2 个空格缩进。eslint: [indent](https://eslint.org/docs/rules/indent)
37+
38+
### 代码示例
39+
40+
为了更加直观,规约描述之后通常会配上代码示例,例如:
41+
42+
```js
43+
// bad
44+
function foo() {
45+
∙∙∙∙let name;
46+
}
47+
48+
// good
49+
function foo() {
50+
∙∙let name;
51+
}
52+
```
53+
54+
我们约定用 `bad` 注释表示反例,用 `good` 注释表示正例。
55+
56+
除了 `bad``good`,有时你还会看到 `disallowed``allowed``best` 这几种注释,它们的含义如下:
57+
58+
```js
59+
// disallowed - 禁止(用于部分明令禁止的用法)
60+
// bad - 反例
61+
// allowed - 中例(用于允许但不推荐的用法)
62+
// good - 正例
63+
// best - 最佳正例(多个正例中最好的实现)
64+
```
65+
66+
## 如何参与
67+
68+
非常欢迎大家通过 [Issues](https://github.com/alibaba/f2e-spec/issues) 反馈问题和需求,或者通过 [PRs](https://github.com/alibaba/f2e-spec/pulls) 参与贡献,请参考 [CONTRIBUTING.md](/CONTRIBUTING.md)

docs/coding/common.md

+6
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
---
2+
group: Coding Style
3+
order: 0
4+
---
5+
6+
# Common Coding Specification

docs/coding/common.zh.md

+8
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
---
2+
group: 代码风格
3+
order: 0
4+
---
5+
6+
7+
# 通用代码风格
8+

0 commit comments

Comments
 (0)