Инструмент командной строки для сборки установщиков из набора conda-пакетов: shell-скриптов, установщиков macOS .pkg и Windows .exe/.msi.
AnswerDotAI/nbdev
Среда разработки на основе ноутбуков, которая превращает Jupyter Notebooks в Python-пакеты с документацией, тестами, CI и публикацией в PyPI/conda.
- Звёзды
- 5,323
- Форки
- 514
- Открытые issues
- 187
- Последний коммит
- 22 часа назад
Что это?
nbdev позволяет писать код на Python, тесты и документацию в Jupyter Notebooks, используя облегчённую разметку. На основе ноутбуков он экспортирует модули Python, создаёт сайт документации с помощью Quarto и GitHub Pages, запускает тесты параллельно и настраивает GitHub Actions для непрерывной интеграции.
Проект синхронизирует ноутбуки и исходный код в виде обычного текста в обе стороны: можно редактировать код в IDE, а затем переносить изменения обратно в ячейки ноутбука, из которых он был получен. Git hooks удаляют ненужные метаданные ноутбуков и отображают конфликты слияния в удобочитаемом виде. Инструменты сборки пакетов помогают выпускать релизы в PyPI и conda.
В nbdev3 конфигурация проекта перенесена из settings.ini в pyproject.toml; также добавлена команда nbdev-migrate-config для преобразования существующих проектов nbdev2.
Ключевые возможности
- 01Экспортирует ноутбуки в модули Python и синхронизирует их с исходным кодом в обе стороны
- 02Создаёт сайты документации с поиском с помощью Quarto и GitHub Pages
- 03Запускает тесты на основе ноутбуков параллельно одной командой
- 04Предоставляет GitHub Actions workflows для CI и пересборки документации
- 05Публикует пакеты в PyPI и conda
- 06Включает Git hooks для очистки ноутбуков и разрешения конфликтов слияния
Сценарии использования
- Создание библиотеки Python, в которой код, тесты и документация собраны в ноутбуках
- Публикация open-source-пакета Python в PyPI с автоматизированными релизами
- Автоматическая генерация документации проекта со ссылками на исходный код
- Редактирование кода из ноутбуков в IDE с синхронизацией изменений обратно в ноутбуки
Быстрый старт
- 1
Установите nbdev с помощью pip
pip install nbdev - 2
Запустите nbdev-help, чтобы просмотреть доступные команды
nbdev-help
Что важно знать
- В Windows требуется WSL; в cmd и PowerShell программа не работает.
- Устанавливать нужно в ту же среду Python, которую используют Jupyter и ваш проект.
- В выпуске nbdev3 за январь 2026 года конфигурацию перенесли в pyproject.toml. Это несовместимое изменение для проектов nbdev2.
В подборках
Темы
Частые вопросы
- Что такое nbdev?
- Среда разработки на основе ноутбуков, которая превращает Jupyter Notebooks в Python-пакеты с документацией, тестами, CI и публикацией в PyPI/conda. nbdev позволяет писать код на Python, тесты и документацию в Jupyter Notebooks, используя облегчённую разметку. На основе ноутбуков он экспортирует модули Python, создаёт сайт документации с помощью Quarto и GitHub Pages, запускает тесты параллельно и настраивает GitHub Actions для непрерывной интеграции.
- nbdev можно использовать бесплатно? Какая у него лицензия?
- nbdev распространяется с открытым исходным кодом под лицензией Apache-2.0. Перед использованием в коммерческих продуктах проверьте условия лицензии.
- nbdev всё ещё поддерживается?
- Активно поддерживается. Последний коммит в nbdev — 5 нояб. 2026 г..
- Для чего можно использовать nbdev?
- Создание библиотеки Python, в которой код, тесты и документация собраны в ноутбуках Публикация open-source-пакета Python в PyPI с автоматизированными релизами Автоматическая генерация документации проекта со ссылками на исходный код Редактирование кода из ноутбуков в IDE с синхронизацией изменений обратно в ноутбуки
- Как установить nbdev?
- Установите nbdev с помощью pip: pip install nbdev Запустите nbdev-help, чтобы просмотреть доступные команды: nbdev-help
- Где скачать nbdev?
- Исходный код и инструкции по установке — на GitHub: https://github.com/AnswerDotAI/nbdev
Описание создано ИИ на основе README проекта. Статистика GitHub обновляется ежедневно.
Похожие проекты
Инструмент с открытым исходным кодом для создания адаптивного трёхпанельного сайта со справочной документацией API на основе спецификаций OpenAPI, Swagger, AsyncAPI или GraphQL.
Современный расширяемый менеджер Python-проектов для сборки, работы с окружениями, тестирования, линтинга, управления версиями и публикации.
Инструмент автоматизации сборки Python-проектов с задачами, связанными зависимостями, и плагинами для настройки жизненного цикла сборки.
Веб-браузер API-документации: объединяет справочники для разработчиков в одном интерфейсе с поиском и офлайн-доступом.
Инструмент для автоматизации релизов Go-проектов: собирает и упаковывает бинарные файлы, публикует их на GitHub, в пакетных менеджерах и реестрах контейнеров.