Skip to content

Commit 0b216ad

Browse files
committed
docs: 添加MobX相关规则文档及项目文档
1 parent 8df6622 commit 0b216ad

File tree

11 files changed

+445
-38
lines changed

11 files changed

+445
-38
lines changed

CHANGELOG.md

Lines changed: 32 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,14 @@
55
格式基于 [Keep a Changelog](https://keepachangelog.com/zh-CN/1.0.0/)
66
并且本项目遵循 [语义化版本](https://semver.org/lang/zh-CN/)
77

8+
## [1.2.0] - 2025-07-02
9+
10+
### 文档更新
11+
- 重构翻译进度报告结构,添加详细领域统计
12+
- 更新项目路线图至2025下半年
13+
- 新增翻译问题排查指南
14+
- 完善术语一致性检查流程
15+
816
## [1.1.0] - 2025-06-25
917

1018
### 新增
@@ -16,9 +24,9 @@
1624

1725
## [1.0.1] - 2025-05-29
1826

19-
### 🔧 项目管理优化
27+
### 项目管理优化
2028

21-
#### AI辅助工具集重构
29+
#### AI辅助工具集重构
2230
- **重构 ai-help 目录结构**: 将项目管理工具集重新组织为清晰的三层架构
2331
- `docs/` - 项目管理文档 (PROJECT_STATUS.md, promotion-strategy.md, setup-guide.md)
2432
- `scripts/` - 自动化脚本 (批量翻译、状态检查、内容迁移工具)
@@ -27,20 +35,20 @@
2735
- **功能优化**: 删除冗余脚本,保留核心功能,提升工具集可维护性
2836
- **文档更新**: 完善工具集说明文档,明确使用场景和最佳实践
2937

30-
#### 📋 项目管理改进
38+
#### 项目管理改进
3139
- **工作流程优化**: 建立清晰的翻译管理、状态跟踪、版本发布流程
3240
- **工具集整合**: 统一项目管理工具,提升开发效率
3341
- **文档体系**: 完善项目状态报告和推广策略文档
3442

3543
## [1.0.0] - 2024-01-XX
3644

37-
### 🎉 首次发布
45+
### 首次发布
3846

3947
这是 Awesome Cursor Rules 中文版的首次正式发布!
4048

41-
### 新增功能
49+
### 新增功能
4250

43-
#### 📚 完整翻译的规则集 (29个)
51+
#### 完整翻译的规则集 (29个)
4452
- **React 生态系统** (13个规则集)
4553
- Next.js + TypeScript 完整配置
4654
- React 组件开发最佳实践
@@ -77,59 +85,59 @@
7785
- **CMS 开发** (1个规则集)
7886
- Drupal 11 内容管理系统
7987

80-
#### 🏗️ 项目结构
88+
#### 项目结构
8189
- 按技术栈分类的清晰目录结构
8290
- 前端/后端/区块链/系统编程分类
8391
- 155+ 个翻译文件,覆盖主流技术栈
8492

85-
#### 📖 完善文档
93+
#### 完善文档
8694
- 中文 README 和项目介绍
8795
- 详细的快速开始指南
8896
- 贡献指南和翻译标准
8997
- 项目路线图和发展规划
9098
- 常见问题解答
9199

92-
#### 🔧 开发工具
100+
#### 开发工具
93101
- GitHub Actions 自动化质量检查
94102
- Markdown 格式验证
95103
- .cursorrules 文件格式检查
96104
- 项目结构完整性验证
97105

98-
#### 🤝 社区功能
106+
#### 社区功能
99107
- GitHub Issue 模板 (Bug 报告、功能请求、翻译请求)
100108
- Pull Request 模板
101109
- 贡献者指南
102110
- 社区讨论支持
103111

104-
### 📊 项目统计
112+
### 项目统计
105113
- **总目录数**: 45+
106114
- **翻译文件数**: 155+
107115
- **技术栈覆盖**: 10+ 主流技术领域
108116
- **文档页面**: 15+
109117

110-
### 🎯 支持的技术栈
111-
- React / Next.js / React Native
112-
- Vue 3 / Nuxt 3
113-
- TypeScript / JavaScript
114-
- Node.js / Express / NestJS
115-
- Python / FastAPI
116-
- C++ / Solidity
117-
- iOS / Android
118-
- Tailwind CSS / Chakra UI / Styled Components
119-
120-
### 🌟 特色功能
118+
### 支持的技术栈
119+
- React / Next.js / React Native
120+
- Vue 3 / Nuxt 3
121+
- TypeScript / JavaScript
122+
- Node.js / Express / NestJS
123+
- Python / FastAPI
124+
- C++ / Solidity
125+
- iOS / Android
126+
- Tailwind CSS / Chakra UI / Styled Components
127+
128+
### 特色功能
121129
- **中文优化**: 所有内容针对中文开发者优化
122130
- **技术栈分类**: 清晰的目录结构便于查找
123131
- **质量保证**: 自动化检查确保翻译质量
124132
- **社区驱动**: 完善的贡献流程和社区支持
125133

126-
### 📝 使用方法
134+
### 使用方法
127135
1. 克隆仓库到本地
128136
2. 选择适合的技术栈规则集
129137
3. 复制 .cursorrules 文件到项目根目录
130138
4. 在 Cursor AI 中开始编程
131139

132-
### 🙏 致谢
140+
### 致谢
133141
感谢 [awesome-cursorrules](https://github.com/PatrickJS/awesome-cursorrules) 原项目的启发和所有贡献者的努力!
134142

135143
---

README.md

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -54,6 +54,21 @@
5454

5555
我们诚挚邀请您查看我们的 [**项目待办清单 (PROJECT_TODO.md)**](./PROJECT_TODO.md),在这里您可以了解到我们接下来的翻译目标,并选择您感兴趣的任务参与贡献!
5656

57+
## 📊 最新进展(2025年7月)
58+
- **翻译进度**:已完成34份规则文件(34%)
59+
- **重点完成**
60+
- React/Next.js核心规则
61+
- Kubernetes文档规范
62+
- GitHub代码质量指南
63+
- **查看详细进度**:[翻译进度报告](./docs/translation-progress.md)
64+
65+
## 🚧 参与贡献
66+
我们急需以下领域的翻译专家:
67+
1. **数据科学**:Python数据处理、机器学习
68+
2. **云原生**:服务网格、无服务器架构
69+
3. **移动开发**:React Native性能优化
70+
[查看贡献指南](./CONTRIBUTING.md)
71+
5772
## 📊 翻译进度一览
5873

5974
我们正在根据优先级翻译原项目中的核心规则集。以下是当前主要任务的进度概览,欢迎您认领感兴趣的任务!

docs/roadmap.md

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,20 @@
3030
- [ ] 建立社区治理机制
3131
- [ ] 国际化支持
3232

33+
## 2025下半年路线图
34+
35+
### Q3目标(2025年7月-9月)
36+
- **完成数据科学领域翻译**:包括Python数据处理、机器学习等核心规则
37+
- **云原生关键规范**:完成服务网格、无服务器架构和多云部署指南
38+
- **建立术语库**:统一技术术语翻译,提高一致性
39+
- **社区协作机制**:建立翻译审校流程,邀请专家参与
40+
41+
### Q4目标(2025年10月-12月)
42+
- **移动开发完整指南**:覆盖React Native和跨平台开发
43+
- **区块链高级主题**:智能合约安全和DeFi模式
44+
- **自动化测试覆盖**:实现翻译文档的自动化校验
45+
- **多语言支持**:启动日文和韩文翻译计划
46+
3347
## 📊 翻译优先级
3448

3549
### 🔥 高优先级 (4周内)

docs/translation-progress.md

Lines changed: 46 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -153,6 +153,38 @@
153153
- 性能优化指南
154154
- 安全开发规范
155155

156+
## ⚠️ 未翻译重点部分
157+
1. **数据科学领域**
158+
- Python数据处理规则
159+
- 机器学习最佳实践
160+
- 数据可视化指南
161+
162+
2. **云原生开发**
163+
- 服务网格(Service Mesh)配置
164+
- 无服务器(Serverless)模式
165+
- 多云部署策略
166+
167+
3. **移动开发**
168+
- React Native性能优化
169+
- 跨平台开发规范
170+
- 移动端安全实践
171+
172+
## 🚀 后续翻译计划
173+
1. **优先级排序**
174+
```mermaid
175+
timeline
176+
title 翻译计划时间线
177+
2025-07-10 : 完成数据科学核心规则
178+
2025-07-20 : 完成云原生关键规范
179+
2025-07-31 : 完成移动开发基础指南
180+
2025-08-15 : 完成所有高优先级规则
181+
```
182+
183+
2. **质量保证措施**
184+
- 新增术语一致性检查
185+
- 引入社区评审机制
186+
- 建立翻译记忆库
187+
156188
## 🤝 贡献翻译
157189

158190
### 如何参与
@@ -200,6 +232,20 @@
200232
- **中优先级**: 15/35 (43% 完成)
201233
- **低优先级**: 6/70 (9% 完成)
202234

235+
## 📊 详细统计数据
236+
| 技术领域 | 已完成文件数 | 总文件数 | 完成率 |
237+
|----------|--------------|----------|--------|
238+
| 前端开发 | 18 | 30 | 60% |
239+
| 后端开发 | 6 | 21 | 29% |
240+
| 移动开发 | 2 | 10 | 20% |
241+
| 区块链 | 1 | 4 | 25% |
242+
| 数据科学 | 0 | 6 | 0% |
243+
| 云原生 | 1 | 8 | 12% |
244+
| 系统编程 | 1 | 5 | 20% |
245+
| 通用工具 | 2 | 7 | 29% |
246+
| DevOps | 3 | 10 | 30% |
247+
| **总计** | **34** | **101** | **34%** |
248+
203249
## 🎯 质量保证
204250

205251
### 审核流程

docs/troubleshooting.md

Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -121,6 +121,36 @@ ls -lh .cursorrules
121121
- 避免过于复杂的规则
122122
- 定期清理 Cursor 缓存
123123

124+
### 6. 翻译问题
125+
126+
#### 技术术语不一致
127+
**问题描述**:相同术语在不同文件中有不同翻译
128+
**解决方案**
129+
1. 使用统一术语表(见`docs/terminology.md`
130+
2. 运行术语检查脚本:`python scripts/term_checker.py`
131+
3. 接受自动修复建议或手动调整
132+
133+
#### 代码示例格式错误
134+
**问题描述**:翻译后代码缩进或格式破坏
135+
**解决方案**
136+
1. 使用Markdown代码块标识符指定语言类型
137+
2. 运行格式校验工具:`npm run lint:markdown`
138+
3. 根据错误提示修正格式
139+
140+
#### 长句表达不清
141+
**问题描述**:英文长句直译导致中文晦涩
142+
**解决方案**
143+
1. 拆分长句为多个短句
144+
2. 调整语序符合中文习惯
145+
3. 保留技术准确性的前提下优化表达
146+
```markdown
147+
# 不佳示例
148+
当组件被渲染时,状态更新将触发重新渲染
149+
150+
# 优化后
151+
组件渲染时,状态更新会触发重新渲染
152+
```
153+
124154
## 🔍 诊断工具
125155

126156
### 1. 规则文件检查脚本
Lines changed: 101 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,104 @@
11
---
2-
description: 实现 MobX stores 进行应用程序状态管理的指导原则
2+
description: "实现 MobX stores 进行应用程序状态管理的指导原则"
33
globs: src/stores/**/*.ts
44
---
5-
- 实现 stores 来管理应用程序状态。
6-
- 利用计算值处理派生状态。
7-
- 使用 actions 修改可观察状态。
8-
- 在异步 actions 中实现适当的错误处理。
5+
- **实现 stores 来管理应用程序状态**:
6+
- **定义可观察状态**:
7+
- 使用 `@observable` 或 `makeObservable` 定义 store 中需要响应式跟踪的状态。
8+
- 示例:
9+
```typescript
10+
import { makeObservable, observable, action, computed } from 'mobx';
11+
12+
class TodoStore {
13+
@observable todos = [];
14+
@observable isLoading = false;
15+
@observable error = null;
16+
17+
constructor() {
18+
makeObservable(this);
19+
}
20+
21+
// ... actions and computed values
22+
}
23+
```
24+
- **利用计算值(`@computed`)处理派生状态**:
25+
- 对于可以从现有可观察状态派生出的数据,使用 `@computed` 属性。它们是惰性求值的,并且只有在依赖的可观察数据发生变化时才会重新计算。
26+
- 示例:
27+
```typescript
28+
class TodoStore {
29+
// ...
30+
@computed
31+
get completedTodosCount() {
32+
return this.todos.filter(todo => todo.completed).length;
33+
}
34+
35+
@computed
36+
get uncompletedTodos() {
37+
return this.todos.filter(todo => !todo.completed);
38+
}
39+
}
40+
```
41+
- **使用动作(`@action`)修改可观察状态**:
42+
- 所有修改 MobX store 可观察状态的函数都应该用 `@action` 标记。这有助于 MobX 批量更新,提高性能,并使调试更容易。
43+
- 示例:
44+
```typescript
45+
class TodoStore {
46+
// ...
47+
@action
48+
addTodo(text: string) {
49+
this.todos.push({ id: Date.now(), text, completed: false });
50+
}
51+
52+
@action
53+
toggleTodo(id: number) {
54+
const todo = this.todos.find(t => t.id === id);
55+
if (todo) {
56+
todo.completed = !todo.completed;
57+
}
58+
}
59+
}
60+
```
61+
- **在异步 actions 中实现适当的错误处理**:
62+
- 对于异步操作(如 API 调用),应在 action 中处理加载状态、成功和失败情况,并捕获错误。
63+
- 示例:
64+
```typescript
65+
class TodoStore {
66+
// ...
67+
@action
68+
async fetchTodos() {
69+
this.isLoading = true;
70+
this.error = null;
71+
try {
72+
// 模拟 API 调用
73+
const response = await new Promise(resolve =>
74+
setTimeout(() => resolve([{ id: 1, text: 'Learn MobX', completed: false }]), 1000)
75+
);
76+
this.todos = response;
77+
} catch (e) {
78+
this.error = e;
79+
} finally {
80+
this.isLoading = false;
81+
}
82+
}
83+
}
84+
```
85+
- **Store 的组合**:
86+
- 对于大型应用,可以将多个相关的 store 组合成一个根 store,方便统一管理和访问。
87+
- 示例:
88+
```typescript
89+
// RootStore.ts
90+
import { makeObservable, observable } from 'mobx';
91+
import { TodoStore } from './TodoStore';
92+
import { UserStore } from './UserStore';
93+
94+
export class RootStore {
95+
@observable todoStore: TodoStore;
96+
@observable userStore: UserStore;
97+
98+
constructor() {
99+
makeObservable(this);
100+
this.todoStore = new TodoStore();
101+
this.userStore = new UserStore();
102+
}
103+
}
104+
```

0 commit comments

Comments
 (0)