# 贡献指南

感谢你愿意让《一人公司·从 0 到 1》变得更好。这份文档说明了我们希望接受哪些类型的贡献，以及如何提交它们。

## 我们欢迎的贡献

| 类别 | 示例 |
| :--- | :--- |
| 📝 **文字打磨** | 错别字、表述不顺、长句拆短、删除冗词 |
| 🎯 **解释强化** | 用一个真实场景或失败案例替换抽象段落 |
| 📊 **图表补充** | 给某一章配一张系统结构图、压力传播图、闭环图 |
| 🧱 **示例代码** | 给"AI 原生开发"或"一人开发"章节补充可运行的小示例 |
| 🌐 **翻译** | 英文版、繁体版、日文版（请新建分支与 i18n 目录） |
| 🎨 **样式 / 交互** | 改进可读性、可访问性、性能、键盘交互 |
| 🐛 **Bug 修复** | 任何与显示、滚动、主题切换有关的问题 |

## 工作流

1. **Fork 仓库**，并在自己的命名空间里创建 feature 分支：
   ```bash
   git checkout -b improve/chapter-7-summary
   ```
2. **保持改动聚焦**：一个 PR 只解决一件事，便于 review。
3. **本地预览**：双击 `index.html` 或 `python3 -m http.server 8000` 起一个本地服务器。
4. **提交规范**：commit message 推荐使用 [Conventional Commits](https://www.conventionalcommits.org/zh-hans/) 风格：
   ```text
   docs(ch7): 用一个真实站立会案例替换抽象段落
   feat(toc): 增加 H3 级目录折叠
   fix(theme): 修复深夜模式下表格边框对比度过低
   style(css): 调整正文段落行距
   ```
5. **发起 PR**：在 PR 描述中写清"做了什么"与"为什么"，并标注涉及的章节号。

## 代码与样式约定

- **零依赖**：请不要引入任何 npm 包、CDN 字体之外的第三方库（避免阅读体验受网络抖动影响）。
- **CSS 变量优先**：颜色、间距、圆角等都应尽量复用 `assets/css/themes.css` 里的变量。
- **JS 现代语法**：使用 ES2020+，但请避免任何需要构建的写法（如 import map / TypeScript / JSX）。
- **保持可访问性**：所有交互组件必须可键盘操作，颜色对比度满足 WCAG AA。

## 内容编辑约定

- **判断先行**：每一章/节的开头尽量先给出"必须记住的判断"，再展开论述。
- **保留因果**：避免把概念压缩成定义，请保留"为什么会这样"的因果链。
- **慎用术语**：第一次出现的术语请用一句话解释，再在括号里给出英文原词。
- **示例真实**：尽量使用可被验证的真实案例（NVIDIA / Microsoft / DORA / Stripe / Vercel 等公开资料）。

## 行为准则

我们采用 [Contributor Covenant 2.1](https://www.contributor-covenant.org/zh-cn/version/2/1/code_of_conduct/)。简而言之：**对人友好，对论点严苛**。

---

如果你不确定某个改动是否合适，**直接开一个 Discussion 或 Draft PR 问一下**就好。我们更怕你不动手，不怕你动手错。
