综合调研
GitHub 之外的领域专用代码来源索引
覆盖 20+ 领域的专用代码平台、包仓库、论坛与数据集,面向代码训练数据采集与领域建模场景
代码数据 训练数据 领域专用语言 代码采集 数据工程
GitHub 之外的领域专用代码来源索引
定位:面向代码训练数据采集与领域建模场景,系统梳理 GitHub 未覆盖或覆盖稀疏的专用代码来源
覆盖范围:20+ 领域 · 80+ 平台
2026.04.15
为什么需要这份索引
GitHub 是代码数据的主矿脉,The Stack v2 等大规模数据集的核心来源。但它有结构性盲区:
- 语言偏科:Python/JS/TS 占比过高,MATLAB、Fortran、Lean、VHDL 等领域语言的高质量代码在 GitHub 上稀疏或不完整
- 社区外迁:很多领域的核心代码生态不在 GitHub 上——R 的 CRAN/Bioconductor、Lean 的 Mathlib、Haskell 的 Hackage 各有独立的包仓库
- 闭源平台:MATLAB File Exchange、Wolfram Library Archive 等平台的代码不被 GitHub 爬虫覆盖
- 论坛沉淀:Stack Overflow 之外,BioStars、Lean Zulip、Arduino Forum 等垂直论坛沉淀了大量带上下文的代码片段
- 链上代码:以太坊等区块链上的已验证合约源码是独立的代码数据源
这份索引按领域分类,每个来源标注数据规模、许可证情况和采集难度,供数据工程实际使用。
一、数学与形式化证明
这是 GitHub 覆盖最薄弱的领域之一。形式化证明代码高度结构化、逻辑严密,对推理训练有独特价值。
Lean
| 来源 | 说明 | 规模 | 采集难度 |
|---|---|---|---|
| Mathlib4 | Lean 4 核心数学库,形式化数学的事实标准 | ~120 万行 Lean 代码 | 低(GitHub 上) |
| Reservoir | Lean 包注册中心,类似 npm | 数百个包 | 中 |
| Lean Zulip | 社区主要交流平台,含大量代码讨论 | 数万条消息 | 中(需爬取) |
| Lean 官方文档 | 教程 + API 文档 + 示例 | — | 低 |
Coq
| 来源 | 说明 | 规模 | 采集难度 |
|---|---|---|---|
| Coq opam 包索引 | 官方包注册中心 | 数百个包 | 中 |
| Mathematical Components | 基于 SSReflect 的数学库 | ~30 万行 | 低 |
| Archive of Formal Proofs(AFP) | Isabelle 的,但 Coq 社区常交叉引用 | 750+ 篇经过同行审查的形式化证明 | 低 |
Isabelle
| 来源 | 说明 | 规模 | 采集难度 |
|---|---|---|---|
| Archive of Formal Proofs | 经同行审查的形式化证明库,质量极高 | 750+ 条目,数百万行 | 低(可批量下载) |
| Isabelle 官方库 | 标准库文档 | — | 低 |
Agda / Idris
| 来源 | 说明 | 规模 |
|---|---|---|
| Agda 标准库 | 依赖类型编程参考 | ~10 万行 |
| 1Lab | 基于 Cubical Agda 的数学库,附带可交互文档 | — |
采集要点:形式化证明代码的价值不在量而在质。每个定理都是完整的逻辑链条,可直接用于推理能力训练。优先采集 Mathlib4 和 AFP。
二、科学计算
MATLAB
| 来源 | 说明 | 规模 | 许可证 |
|---|---|---|---|
| MATLAB File Exchange | 核心来源,MathWorks 官方社区 | 5 万+ 文件/工具箱 | BSD 为主 |
| MATLAB Central Answers | Q&A 社区,带上下文的代码片段 | 数十万问答 | — |
| MATLAB 官方示例 | 各工具箱的官方示例代码 | 数千个 | 版权归 MathWorks |
R
| 来源 | 说明 | 规模 | 许可证 |
|---|---|---|---|
| CRAN | 官方包仓库 | 2.1 万+ 包 | GPL 为主 |
| Bioconductor | 生物信息学专用 R 包 | 2200+ 包 | Artistic-2.0 为主 |
| R-bloggers | 社区博客聚合,大量带代码的分析案例 | 数万篇 | — |
| rOpenSci | 经同行审查的科学 R 包 | 350+ 包 | 混合 |
| Tidyverse | 数据科学核心工具集 | — | MIT |
Julia
| 来源 | 说明 | 规模 |
|---|---|---|
| JuliaHub / General Registry | 官方包注册中心 | 1 万+ 包 |
| Julia Discourse | 主要论坛 | 数万讨论 |
| JuliaCon 演讲 | 年度会议,附代码 | — |
Fortran
| 来源 | 说明 | 规模 |
|---|---|---|
| Fortran Package Index | 社区包索引 | 500+ 包 |
| Fortran Discourse | 主要论坛 | — |
| Netlib | 经典数值计算库(LAPACK、BLAS、LINPACK) | 数十个核心库 |
| NIST 数学软件指南 | 美国国标局数学软件分类索引 | — |
Wolfram / Mathematica
| 来源 | 说明 | 规模 |
|---|---|---|
| Wolfram Library Archive | 代码/笔记本库 | 数千条目 |
| Wolfram Demonstrations | 交互式演示 + 源码 | 1.3 万+ |
| Wolfram Language Documentation | 自带完整代码示例 | — |
统计与社会科学
| 来源 | 说明 | 语言 |
|---|---|---|
| SSC Archive(Boston College) | Stata 用户贡献包 | Stata |
| SAS Communities | SAS 论坛 + 代码分享 | SAS |
| SPSS Syntax Library | IBM 官方 SPSS 示例 | SPSS |
三、硬件描述与嵌入式
这类代码在 GitHub 上有一些,但核心社区在专用平台。
Verilog / VHDL / SystemVerilog
| 来源 | 说明 | 规模 |
|---|---|---|
| OpenCores | 经典开源 IP 核心库 | 1500+ 项目 |
| LibreCores | OpenCores 的现代继承者 | 数百项目 |
| FPGA4Fun | FPGA 教程 + 完整 Verilog 示例 | — |
| Chipverify | SystemVerilog/UVM 教程与代码 | — |
| EDA Playground | 在线 HDL 沙盒,含公开代码 | 数万代码片段 |
嵌入式 / IoT
| 来源 | 说明 | 语言 |
|---|---|---|
| Arduino Project Hub | 官方项目库 | C/C++ |
| PlatformIO Registry | 跨平台嵌入式库 | C/C++ |
| Hackaday.io | 硬件项目社区 | 混合 |
| Arduino Forum | 论坛,大量问答代码 | C/C++ |
| STM32 CubeMX 示例 | ST 官方 HAL 代码 | C |
| ESP-IDF Examples | 乐鑫官方(虽在 GitHub 但独立性强) | C |
四、区块链与智能合约
链上已验证合约是独立于 GitHub 的代码数据源,且带有部署/交互的真实上下文。
Solidity(以太坊系)
| 来源 | 说明 | 规模 |
|---|---|---|
| Etherscan Verified Contracts | 以太坊链上已验证源码 | 数十万合约 |
| Sourcify | 去中心化合约源码验证平台 | 数十万 |
| OpenZeppelin Contracts | 安全合约库标杆 | — |
| DeFi 协议源码 | 通过 DeFiLlama 索引追踪到各协议仓库 | — |
其他链
| 来源 | 说明 | 语言 |
|---|---|---|
| Sui Move Examples | Move 语言(Sui) | Move |
| Aptos Move Examples | Move 语言(Aptos) | Move |
| Solana Cookbook | Solana 开发模式集 | Rust/TS |
| CosmWasm Template | Cosmos 系智能合约 | Rust |
五、数据查询与管道
SQL
| 来源 | 说明 | 规模 |
|---|---|---|
| dbt Hub | dbt 包,数据建模 SQL | 数百个包 |
| SQLZoo | 交互式 SQL 题库 | — |
| LeetCode Database | SQL 刷题 | 300+ 题 |
| Mode Analytics SQL Tutorial | 带真实数据集的 SQL 教程 | — |
| Spider / BIRD 数据集 | Text-to-SQL 研究数据集 | 1 万+ SQL |
图查询 / 知识图谱
| 来源 | 说明 | 语言 |
|---|---|---|
| Neo4j GraphGists | Cypher 查询示例库 | Cypher |
| SPARQL 查询示例(Wikidata) | 知识图谱查询 | SPARQL |
数据管道 / ETL
| 来源 | 说明 | 语言 |
|---|---|---|
| Airflow DAGs 示例 | 工作流编排 | Python |
| Dagster Examples | 数据编排 | Python |
| Great Expectations Gallery | 数据质量规则库 | Python |
六、游戏开发
Shader 代码
| 来源 | 说明 | 语言 |
|---|---|---|
| Shadertoy | 最大的 Shader 社区,10 万+ 公开作品 | GLSL |
| ShaderGraph / HLSL 示例(Unity) | Unity 官方 | ShaderLab/HLSL |
| The Book of Shaders | 教程 + 交互式代码 | GLSL |
| GLSLSandbox | 在线 GLSL 编辑器 + 社区作品 | GLSL |
游戏引擎脚本
| 来源 | 说明 | 语言 |
|---|---|---|
| Unity Asset Store(免费) | 含脚本的免费资源 | C# |
| Godot Asset Library | 开源引擎的资源库 | GDScript |
| Unreal Marketplace | 部分免费含蓝图/C++ | C++/Blueprint |
| GameDev StackExchange | 游戏开发 Q&A | 混合 |
| Roblox DevForum | Roblox 开发社区 | Luau |
七、生物信息学与生命科学
这是一个代码量大但高度专业化的领域,GitHub 上有一部分,但核心生态在专用平台。
| 来源 | 说明 | 语言 | 规模 |
|---|---|---|---|
| Bioconductor | R 生物信息学包平台 | R | 2200+ 包 |
| BioStars | 生物信息学 Q&A 论坛 | 混合 | 15 万+ 问答 |
| Galaxy ToolShed | Galaxy 工作流平台的工具库 | Python/XML | 数千工具 |
| Biopython | Python 生物信息学库 | Python | — |
| Nextflow nf-core | 标准化生物信息管道集合 | Nextflow/Groovy | 100+ 管道 |
| Snakemake Workflow Catalog | 可复现分析工作流 | Snakemake/Python | 200+ |
八、函数式编程
GitHub 上有,但这些语言的核心包生态独立运作。
| 来源 | 说明 | 语言 | 规模 |
|---|---|---|---|
| Hackage | Haskell 包仓库 | Haskell | 1.7 万+ 包 |
| Stackage | Hackage 的稳定子集 | Haskell | — |
| opam | OCaml 包管理器 | OCaml | 4000+ 包 |
| Hex.pm | Elixir/Erlang 包注册中心 | Elixir/Erlang | 1.5 万+ 包 |
| Clojars | Clojure 包仓库 | Clojure | 3 万+ 库 |
| Pursuit | PureScript 包索引 | PureScript | 数千包 |
九、逻辑编程与约束求解
| 来源 | 说明 | 语言 |
|---|---|---|
| SWI-Prolog Packs | Prolog 包注册中心 | Prolog |
| MiniZinc Benchmark Suite | 约束编程竞赛题集 | MiniZinc |
| ASP Competition | Answer Set Programming 竞赛 | ASP |
| TPTP Problem Library | 自动定理证明标准测试集 | TPTP 语法 |
十、排版与文档
| 来源 | 说明 | 语言 | 规模 |
|---|---|---|---|
| CTAN | TeX/LaTeX 宏包仓库 | TeX | 6000+ 包 |
| Overleaf Gallery | LaTeX 模板库 | TeX | 数千模板 |
| Typst Packages | 新一代排版系统的包索引 | Typst | 快速增长中 |
十一、配置与基础设施即代码
| 来源 | 说明 | 语言 |
|---|---|---|
| Terraform Registry | IaC 模块/Provider 注册中心 | HCL |
| Ansible Galaxy | Ansible Role 和 Collection 仓库 | YAML |
| Puppet Forge | Puppet 模块仓库 | Puppet DSL |
| Chef Supermarket | Chef Cookbook 仓库 | Ruby DSL |
| Helm Hub / ArtifactHub | Kubernetes Helm Charts | YAML |
| Nixpkgs | Nix 包集合(GitHub 上但独立生态) | Nix |
十二、竞赛平台代码
竞赛代码的特点是带有明确的输入/输出规范和评测标准,适合做代码推理训练数据。
| 来源 | 说明 | 语言 | 规模 |
|---|---|---|---|
| Codeforces | 编程竞赛,公开提交代码 | C++/Python/Java | 数亿次提交 |
| AtCoder | 日本编程竞赛 | 混合 | 千万级提交 |
| Kaggle Notebooks | 数据科学竞赛 notebook | Python/R | 百万+ |
| AIZU Online Judge | 日本 OJ,公开代码 | 混合 | — |
| Rosetta Code | 同一任务的 800+ 语言实现 | 全语言 | 1200+ 任务 |
| Project Euler | 数学编程题(社区非官方解法集) | 混合 | 900+ 题 |
十三、跨域聚合平台
这些平台不限语言,但提供了 GitHub 之外的独立代码生态。
| 来源 | 说明 | 特点 |
|---|---|---|
| GitLab.com | 仅次于 GitHub 的代码托管 | 大量自托管项目、CI/CD 配置 |
| Bitbucket | Atlassian 系 | 企业项目偏多 |
| Codeberg | 非营利代码托管 | 纯开源社区 |
| SourceHut | 极简主义代码托管 | 内核/底层项目偏多 |
| SourceForge | 老牌代码托管 | 历史项目,很多不在 GitHub |
| Savannah(GNU) | GNU 项目官方托管 | C/Emacs Lisp 为主 |
| CGAL | 计算几何算法库 | C++ |
| Software Heritage | 全球软件遗产归档计划 | 200 亿+ 源文件 |
采集策略建议
从训练数据工程的角度,几个实操要点:
优先级排序
| 优先级 | 领域 | 理由 |
|---|---|---|
| P0 | 形式化证明(Lean/Coq/Isabelle) | 稀缺 + 推理价值极高 |
| P0 | MATLAB / R / Fortran | GitHub 覆盖薄,专用平台数据量大 |
| P1 | Shader(GLSL/HLSL) | Shadertoy 独有,GitHub 几乎没有 |
| P1 | 智能合约(链上已验证) | 独立数据源,带真实执行上下文 |
| P1 | HDL(Verilog/VHDL) | 芯片设计领域核心需求 |
| P2 | 竞赛代码 | 量大,有标准化评测 |
| P2 | 函数式语言包仓库 | 补充 GitHub 覆盖 |
| P3 | 配置语言(HCL/Puppet/Nix) | 需求不紧迫但有特定用途 |
许可证注意事项
- CRAN/Bioconductor:以 GPL 为主,需注意 copyleft 条款
- MATLAB File Exchange:BSD 居多,但需逐包确认
- Etherscan 合约:链上公开但无明确 OSS 许可证,需法务评估
- 竞赛平台:多数 TOS 不允许批量爬取,需确认
- AFP(Isabelle):BSD 许可,可自由使用
去重策略
很多包仓库(如 CRAN、Hackage)的源码同时也镜像在 GitHub 上。采集时需要:
- 以包仓库为主,GitHub 为补充
- 用包名 + 版本号做去重键
- 保留包仓库的元数据(依赖关系、下载量、维护状态)
附录:一张表速查
| 领域 | 核心平台 | 语言 | 规模量级 |
|---|---|---|---|
| 形式化证明 | Mathlib4 / AFP / Coq opam | Lean/Isabelle/Coq | 百万行级 |
| 科学计算 | MATLAB File Exchange / CRAN / JuliaHub | MATLAB/R/Julia | 万包级 |
| 数值计算 | Netlib / NIST GAMS | Fortran/C | 经典库 |
| 符号计算 | Wolfram Library / Demonstrations | Wolfram | 万级 |
| 硬件描述 | OpenCores / LibreCores / EDA Playground | Verilog/VHDL | 千项目级 |
| 嵌入式 | Arduino Hub / PlatformIO | C/C++ | 万项目级 |
| 区块链 | Etherscan / Sourcify | Solidity/Move | 十万合约级 |
| SQL/数据 | dbt Hub / Spider / BIRD | SQL | 千包/万查询 |
| Shader | Shadertoy / GLSLSandbox | GLSL | 十万级 |
| 游戏脚本 | Godot Asset Lib / Unity Store | GDScript/C# | 千级 |
| 生物信息 | Bioconductor / nf-core / BioStars | R/Nextflow | 千包级 |
| 函数式 | Hackage / opam / Hex.pm / Clojars | Haskell/OCaml/Elixir/Clojure | 万包级 |
| 逻辑编程 | SWI-Prolog Packs / TPTP | Prolog | 百级 |
| 排版 | CTAN / Typst Packages | TeX/Typst | 千包级 |
| IaC | Terraform Registry / Ansible Galaxy | HCL/YAML | 万模块级 |
| 竞赛 | Codeforces / AtCoder / Kaggle | 混合 | 亿提交级 |
| 跨语言对照 | Rosetta Code | 800+ 语言 | 千任务级 |
| 软件遗产 | Software Heritage | 全语言 | 200 亿文件 |