Homebrew Hub 的数据库是否开放,如何贡献或获取数据?

是开放的。Homebrew Hub 把数据库维护在公开的 git 仓库中,按平台分为 Game Boy、Game Boy Advance、NES 三个仓库,任何人都可以贡献和审计;元数据遵循定义好的 JSON schema,数据集以宽松许可证发布,网站也提供 API 入口。如果你只是想取用数据,走 API 或直接克隆对应平台的仓库即可;如果你想补充条目,则向对应仓库提交内容。

开放程度体现在哪

Homebrew Hub 是一个社区主导的项目,目标是收集、归档和保存为 Game Boy(Color)、Game Boy Advance 和 NES 开发的自制软件与 demoscene 作品。它的开放性不是一句口号,而是落在几个具体机制上:

  • 公开仓库:数据库按平台拆成三个公开 git 仓库(Game Boy、Game Boy Advance、NES),代码与数据都可查看。
  • 可审计:任何人都能检查数据是怎么组织的、某条记录从哪来。
  • 可贡献:任何人都能提交新条目或修正。
  • 结构化元数据:每条记录遵循定义好的 JSON schema,而不是自由文本。
  • 宽松许可证:数据集以 permissive license 发布,取用和再利用的限制较少。
  • API 入口:网站页脚提供 API 链接,适合程序化获取。

网站当前数据库共有 1629 条记录(这是页面显示的总数,会随贡献增长)。

如何获取数据

按你的用途选路径:

需求 推荐方式 说明
程序化查询、做小工具 API 页脚有 API 入口,适合按需拉取
全量分析、离线处理 克隆对应平台 git 仓库 数据即仓库内容,可拿到完整历史
只想玩、看条目 网站浏览 按 Games / Demoscene / Music / Tools 分类浏览

克隆仓库时注意平台是分开的,需要哪个平台就取哪个仓库,不必三个都拉。数据集是宽松许可证,但仍建议在使用时保留来源信息。

如何贡献

贡献的基本路径是向对应平台的公开仓库提交内容。流程上:

  1. 确定你要补充的条目属于哪个平台(Game Boy / Game Boy Advance / NES),进入对应仓库。
  2. 按仓库现有的 JSON schema 组织元数据——字段结构要和已有条目一致,这是能被接受的前提。
  3. 提交你的改动(如 pull request),等待维护者审核合并。

网站上也有 “Submit new game” 入口,可作为提交的起点。

常见卡点:元数据不符合 schema 是最容易被打回的原因。动手前先读几条已有条目的 JSON,照着字段填,比凭感觉写要省事。

这个网站还提供什么

除了数据库本身,Homebrew Hub 还用 WebAssembly 版本的 mGBA、binjnes 和 binjgb 在浏览器内直接模拟运行这些软件,不需要下载模拟器。项目也做过数字保存工作,例如抢救了 90 年代一些最早的未授权软件。这些能力与开放数据库是配套的:数据开放,运行也在浏览器里完成。

如果你关心的是“能不能拿到数据、能不能参与”,答案是两者都可以,入口就是那三个公开仓库和 API。

hh.gbdev.io