一、项目核心认知
1. 基本背景与定位
ChinaTextbook是由开源团队TapXWorld发起的公益教育项目,官方仓库地址为:https://github.com/TapXWorld/ChinaTextbook。截至2026年4月,该项目累计获得46.1k GitHub星标、超2万次Fork,是2025-2026年教育领域影响力最大的开源项目之一。
该项目创立的核心初衷,是为了解决两个行业当中的痛点:
其一,官方教育平台的教材资源入口较为分散,获取流程也相对复杂,普通用户难以快速找到对应版本的资源;
其二,第三方渠道当中存在大量倒卖带水印公共教育资源的灰色产业,普通用户需要为原本免费的资源支付额外的费用。
团队希望借助开源整合的方式,让所有群体都能零成本获取正版教材资源,消除地域以及经济条件所带来的教育信息差。
2. 资源覆盖范围
该项目采用了按学制分层的清晰目录架构,所有资源均为高清无水印PDF版本,完全契合官方教材的内容以及排版,支持直接进行打印以及电子阅读:
| 学段分类 | 覆盖学科 | 版本支持说明 |
|---|---|---|
| 小学(六三制/五四制) | 语文、数学、英语、科学、道德与法治、音乐、美术、体育与健康全学科 | 覆盖人教版、苏教版、北师大版、北京版等8种主流版本,所有年级上下册齐全 |
| 初中(六三制/五四制) | 9门中考学科+物理/化学/生物+俄语/日语等小语种教材 | 适配全国各省市新课标要求,同步更新最新版教材 |
| 高中阶段 | 必修、选择性必修、选修全系列教材,含信息技术、通用技术等拓展学科 | 全面覆盖新高考改革后的所有新版教材 |
| 大学阶段 | 高等数学、线性代数等公共基础课+计算机、金融、医学等主流专业核心课教材 | 收录同济版高数、北大版离散数学等行业公认经典版本,覆盖90%以上高校常用教材 |
其中数学学科的资源最为完整,包含从小学到大学的全套教材以及配套的习题集,也就是带官方标准答案的那种。全量资源的总大小约为110GB,并且会持续保持每月更新的状态。
3. 合规性说明
该项目严格遵循版权相关规范:所有资源均来自国家中小学智慧教育平台等官方公开的免费教育资源,仅做整合归档以及分发便利化的相关工作,未包含任何盗版内容。该项目明确禁止商业用途,所有资源仅可用于个人学习与研究,如有版权争议可通过Issue渠道进行反馈,维护团队会在24小时内响应并处理相关问题。
二、普通用户使用与本地搭建指南
1. 单本教材快速获取
不需要进行复杂的配置,直接去访问官方仓库就可以完成下载。
-
打开这个项目的地址也就是https://github.com/TapXWorld/ChinaTextbook

-
按照目录层级来进行导航:也就是
学段 → 学科 → 年级 → 版本,找到对应的目标教材 -
点击对应PDF文件,把「Download raw file」按钮选中并直接进行下载
访问加速方案 :如GitHub访问不稳定,可使用国内镜像站点(将域名替换为
https://githubfast.com),或通过社区官方分享的夸克云盘镜像获取:https://pan.quark.cn/s/6ef19679fbbe
2. 大文件合并方案
鉴于GitHub存在单文件50MB的上传限制,超过该大小的教材会被拆分为35MB的分片文件,具体的合并步骤如下:
1. 先下载对应教材的所有`.part`分片文件,并且把它们保存到同一个文件夹当中。
2. 下载官方合并工具:在仓库根目录找到对应系统的工具文件,也就是`mergePDFs-windows-amd64.exe`对应Windows,`mergePDFs-darwin-amd64`对应macOS,`mergePDFs-linux-amd64`对应Linux。
3. 把合并工具放到和分片文件相同的目录当中,双击运行它就可以自动合并成为完整的PDF,整个过程所花费的时间不会超过30秒。
3. 本地全量知识库搭建
要是需要离线使用所有资源的话,就按照下面的步骤来进行操作。
- 安装Git工具,执行克隆命令:
bash
git clone https://github.com/TapXWorld/ChinaTextbook.git
- 全量资源大小约110GB,建议预留150GB以上存储空间,首次克隆耗时1-3小时(取决于网络速度)
- 后续同步最新资源只需执行:
bash
cd ChinaTextbook && git pull
三、公共服务站点搭建指南,也就是面向学校以及公益组织的相关指南
要是需要为偏远地区学校、公益组织这类特定群体搭建专属的访问平台,可以参考以下的生产级方案。
1. 技术栈选型
| 组件类型 | 推荐方案 | 适用场景 |
|---|---|---|
| 前端框架 | Vue3 + Element Plus | 支持移动端适配,实现分类检索、预览、下载功能 |
| 后端服务 | Python FastAPI 或 Node.js Express | 轻量级架构,无需数据库,直接读取本地文件目录结构 |
| 存储方案 | 本地存储(日访问量<1万) + 阿里云OSS(日访问量>1万) | 大流量场景下CDN加速,降低服务器带宽压力 |
| 搜索引擎 | Meilisearch(轻量)或 Elasticsearch(大规模) | 支持按书名、学科、版本、年级多维度检索,搜索响应时间<100ms |
2. 核心部署步骤
- 资源同步配置:
bash
# 首次全量同步
git clone https://github.com/TapXWorld/ChinaTextbook.git /data/ChinaTextbook
# 配置每日自动更新任务(crontab),凌晨1点同步最新资源
0 1 * * * cd /data/ChinaTextbook && git pull >> /var/log/chinatextbook_sync.log 2>&1
- 核心接口开发:
只需要把这3个基础接口进行实现,就可以满足相关的需求。
- 目录接口:递归读取资源目录,返回分层分类数据
- 搜索接口:对接搜索引擎,返回匹配的教材列表
- 下载接口:支持断点续传,添加IP限流逻辑(建议单IP每日最多下载20本,避免恶意爬虫占用带宽)
- 前端功能开发:
核心模块包括:首页分类导航、学段筛选、教材详情页、预览功能也就是仅展示前10页、用户反馈入口。建议添加资源纠错、版本求提交通道,并且与官方仓库Issue体系打通。
3. 合规优化建议
要避免收录那些还没有公开的版权教材,要是出现了版权投诉的话,要在72小时以内完成下架工作。
不会向用户收取任何费用,也不会植入商业广告。
四、社区参与与贡献指南
该项目运用众包维护模式,也就是把相关工作交由大众来开展维护,任何人员都可以参与到贡献工作当中。
-
资源贡献:针对缺失的教材版本,可以提交Issue进行说明,或是提交PR来上传符合高清无水印要求的相关资源。
-
工具开发:开展合并工具、移动端APP、检索插件等生态工具的开发工作
-
本地化贡献:开展翻译项目文档的相关工作,将其转换为多语言版本,以此帮助海外华人用户进行使用。
-
推广贡献:向偏远地区的学校以及公益组织开展项目的宣传工作,以此帮助更多有需要的人获取到相关的资源。
所有的贡献者都会被列入到项目贡献者名单当中,并且一同参与这个普惠教育的公益项目。
正如项目README当中所写:"希望每一个渴望知识的人,都能被温柔以待。" 这类开源教育项目的价值,不在于技术有多复杂,而在于它真正借助技术打破了信息壁垒,让知识的光芒能够照到每一个角落。我们每一个参与者,都是在为人类文明的公共知识库添砖加瓦。