Repolode
AnswerDotAI

AnswerDotAI/nbdev

基于 Jupyter Notebook 的开发平台,可一并生成 Python 包、文档、测试和持续集成配置。

Star
5,323
Fork
514
未关闭 Issue
187
最近提交
前天

这是什么?

nbdev 让你用 Jupyter Notebook 编写 Python 代码、测试和文档,只需少量轻量标记语法。它会从笔记本导出 Python 模块,借助 Quarto 生成文档网站并发布到 GitHub Pages,支持并行运行测试,并自动配置 GitHub Actions 持续集成。

笔记本与纯文本源码之间支持双向同步,可以在 IDE 中编辑代码,再同步回对应的笔记本单元格。Git 钩子会清理无关的笔记本元数据,并以可读形式呈现合并冲突。打包工具可用于发布到 PyPI 和 conda。

nbdev3 将项目配置从 settings.ini 迁移到 pyproject.toml,并提供 nbdev-migrate-config 命令用于转换现有的 nbdev2 项目。

核心功能

  • 01将笔记本导出为 Python 模块,并与源码双向同步
  • 02借助 Quarto 和 GitHub Pages 生成可搜索的文档网站
  • 03一条命令并行运行笔记本中的测试
  • 04内置 GitHub Actions 工作流,用于持续集成和文档重建
  • 05支持发布到 PyPI 和 conda
  • 06提供 Git 钩子,清理笔记本并便于解决合并冲突

适用场景

  • 在笔记本中同时编写 Python 库的代码、测试和文档
  • 将开源 Python 包自动化发布到 PyPI
  • 从源码自动生成并保持更新的项目文档
  • 在 IDE 中编辑代码,同时保持笔记本同步

快速上手

  1. 1

    使用 pip 安装 nbdev

    pip install nbdev
  2. 2

    运行 nbdev-help 查看可用命令

    nbdev-help

使用前须知

  • 在 Windows 上需要通过 WSL 运行,不支持 cmd 或 PowerShell。
  • 必须与 Jupyter 及项目使用同一个 Python 环境进行安装。
  • 2026 年 1 月发布的 nbdev3 将配置迁移到 pyproject.toml,对 nbdev2 项目是破坏性变更。

收录于专题

标签

常见问题

nbdev 是什么?
基于 Jupyter Notebook 的开发平台,可一并生成 Python 包、文档、测试和持续集成配置。 nbdev 让你用 Jupyter Notebook 编写 Python 代码、测试和文档,只需少量轻量标记语法。它会从笔记本导出 Python 模块,借助 Quarto 生成文档网站并发布到 GitHub Pages,支持并行运行测试,并自动配置 GitHub Actions 持续集成。
nbdev 可以免费使用吗?用的什么许可证?
nbdev 以 Apache-2.0 许可证开源。用于商业产品前,请先确认许可证条款。
nbdev 还在维护吗?
活跃维护中。nbdev 最近一次提交是在 2026年11月5日。
nbdev 适合用来做什么?
在笔记本中同时编写 Python 库的代码、测试和文档 将开源 Python 包自动化发布到 PyPI 从源码自动生成并保持更新的项目文档 在 IDE 中编辑代码,同时保持笔记本同步
nbdev 怎么安装和运行?
使用 pip 安装 nbdev: pip install nbdev 运行 nbdev-help 查看可用命令: nbdev-help
在哪里获取 nbdev?
源代码和安装说明在 GitHub 上:https://github.com/AnswerDotAI/nbdev

概要由 AI 根据项目 README 生成;GitHub 数据每日更新。

相关项目