本页介绍了与 GitHub Readme Stats 集成的外部数据源以及系统中语言数据的维护方式。这些数据源是生成所有卡片类型和可视化效果的基础。有关如何将这些数据渲染成卡片的信息,请参阅 卡片生成系统。
GitHub Readme Stats 依赖多个关键数据源来生成动态 SVG 卡片
来源:存储库结构分析
GitHub Readme Stats 以 GitHub API 作为其主要数据来源。该系统根据正在生成的卡片提取各种类型的数据
GitHub API 请求使用个人访问令牌 (PAT) 进行身份验证,以提高速率限制。未经身份验证,GitHub API 的请求限制为每小时 60 次,而经过身份验证的请求则允许每小时 5,000 次请求。
该系统主要与以下 GitHub API 端点进行交互
| 卡片类型 | 主要 GitHub API 端点 | 检索的数据 |
|---|---|---|
| 统计卡片 | 用户信息、存储库 | Star、提交、PR、贡献 |
| 存储库卡片 | 存储库详情 | Star、forks、issue、语言 |
| 热门语言 | 用户存储库、语言 | 语言使用统计 |
| Gist 卡片 | Gist 详情 | Gist 内容、Star、forks |
来源:存储库 API 调用分析
WakaTime 统计卡片依赖 WakaTime API 获取编码活动数据。此集成要求用户拥有 WakaTime 账户并提供其 WakaTime API 密钥。
来源:存储库 WakaTime 集成分析
GitHub Readme Stats 将编程语言颜色信息保存在一个 JSON 文件中,该文件将语言名称映射到其对应的显示颜色。这些数据来源于 GitHub 的 Linguist 存储库。
语言颜色存储在 languageColors.json 中,其中包含编程语言名称到其十六进制颜色代码的映射。此文件用于
来源:scripts/generate-langs-json.js1-31 src/common/languageColors.json1-624
语言颜色数据通过自动化流程进行更新
generate-langs-json.js 脚本从 GitHub 的 Linguist 存储库获取最新的语言定义languageColors.json 文件,其中包含最新的颜色映射语言更新脚本的相关代码片段演示了其工作原理
来源:scripts/generate-langs-json.js9-30
languageColors.json 文件采用简单的键值对结构,其中每个编程语言名称映射到其十六进制颜色代码
此数据用于为显示编程语言信息的卡片提供视觉效果。
来源:src/common/languageColors.json1-624
下图说明了数据如何从外部源通过系统流向以生成 SVG 卡片
来源:存储库架构分析
有关 GitHub API 集成和使用的特定端点的更多详细信息,请参阅 GitHub API 集成。有关语言数据管理的更多信息,请参阅 语言数据。
刷新此 Wiki
最后索引时间2025 年 4 月 18 日 (299776)