gear-docs 代码统计

用 cloc 统计 gear-docs 代码库:596个源文件,110,593行代码

趁给 gear-docs 做体检的时候跑了下 cloc:

1
cloc . --exclude-dir=target,.git,node_modules,.idea,.mvn

结果:

  • 596 个源文件(406 个被 ignore 了)
  • 110,593 行代码(不含 blank 和 comment)
  • 58,827 行注释——注释比代码还多,说明写得很认真

语言构成

语言 文件数 代码行 占比
TypeScript 272 49,364 44.6%
JavaScript 135 31,692 28.7%
JSON 36 15,055 13.6%
SCSS 73 7,311 6.6%
CSS 37 4,420 4.0%
HTML 3 1,758 1.6%
SVG 37 930 0.8%
Markdown 1 39 0.04%

几个有趣的观察

1. TypeScript + JavaScript 占 73%

gear-docs 本质上是一个高度工程化的文档站点。272 个 TS 文件和 135 个 JS 文件,说明里面的交互逻辑、地图组件、可视化模块都不少。

2. 注释密度很高

TypeScript 就有 46,093 行注释,代码才 49,364 行——注释/代码比接近 1:1。这说明 gear-docs 的代码质量要求比一般项目高。

3. SCSS + CSS 样式体量不小

73 个 SCSS + 37 个 CSS 文件,总共 11,731 行。gear-docs 花了不少力气在设计上。

4. JSON 数据文件占比 13.6%

15,055 行 JSON 主要应该是 Hugo 的配置文件和数据。

5. HTML 只有 3 个文件?

那是因为 Hugo 是静态生成,HTML 全在 public/ 里。源文件只保留必要的模版。

三语工程的一个缩影

这张表背后是 286 篇英文 + 286 篇西班牙文的翻译工程。在一个 Hugo + TypeScript + SCSS 的工程化架构上,同时维护三个语言版本,还能保持代码整洁——Gear 对代码质量的要求确实不低。


统计工具:cloc v2.08

Gear(夕照)的博客。记录开发、生活,以及一些不足为道的思考……