Набор инструментов с открытым исходным кодом для OpenAPI/Swagger: интерактивная справка по API, API-клиент с приоритетом работы офлайн и интеграции со многими веб-фреймворками.
mkdocstrings/griffe
Инструмент для Python, который извлекает структуру и сигнатуры пакета, чтобы генерировать API-документацию или выявлять несовместимые изменения API.
- Звёзды
- 704
- Форки
- 81
- Открытые issues
- 41
- Последний коммит
- 15 дней назад
Что это?
Griffe загружает Python-пакеты и строит структурированное представление их модулей, классов, функций и сигнатур, не выполняя код. Результат можно сериализовать в JSON или просматривать из Python, поэтому его удобно использовать как источник данных для генераторов документации.
Интерфейс командной строки предоставляет две основные команды. `griffe dump` экспортирует API одного или нескольких пакетов в JSON, а `griffe check` сравнивает текущий код с предыдущей версией и сообщает о несовместимых изменениях, например об изменении видов параметров. Базовую версию можно загрузить из git ref или опубликованного релиза на PyPI; также поддерживаются `src`-структуры каталогов.
Griffe можно установить с помощью pip или uv. Его Python API предоставляет `load`, `load_git` и `find_breaking_changes` для автоматизации проверок и создания собственных инструментов.
Ключевые возможности
- 01Статически извлекает структуру и сигнатуры Python-пакетов.
- 02Экспортирует API в JSON с помощью `griffe dump`.
- 03Выявляет несовместимые изменения с помощью `griffe check`, в том числе при сравнении с git refs.
- 04Поддерживает сравнение с релизами, загруженными с PyPI, при установке extra `pypi`.
- 05Предоставляет Python API для загрузки пакетов и поиска несовместимых изменений.
Сценарии использования
- Генерация справочной документации по API библиотеки на Python.
- Выявление случайных изменений сигнатур в CI до выпуска релиза.
- Сравнение нового релиза с предыдущей версией на PyPI.
- Создание собственных инструментов для анализа публичного API кодовой базы.
Быстрый старт
- 1
Установите Griffe с помощью pip
pip install griffe - 2
Выгрузите API пакета в формате JSON
griffe dump httpx fastapi - 3
Проверьте, содержит ли пакет несовместимые изменения API
griffe check mypackage --verbose
Что важно знать
- Для проверки пакетов из PyPI требуется дополнительный компонент pypi (extra).
Темы
Частые вопросы
- Что такое griffe?
- Инструмент для Python, который извлекает структуру и сигнатуры пакета, чтобы генерировать API-документацию или выявлять несовместимые изменения API. Griffe загружает Python-пакеты и строит структурированное представление их модулей, классов, функций и сигнатур, не выполняя код. Результат можно сериализовать в JSON или просматривать из Python, поэтому его удобно использовать как источник данных для генераторов документации.
- griffe можно использовать бесплатно? Какая у него лицензия?
- griffe распространяется с открытым исходным кодом под лицензией ISC. Перед использованием в коммерческих продуктах проверьте условия лицензии.
- griffe всё ещё поддерживается?
- Активно поддерживается. Последний коммит в griffe — 23 окт. 2026 г..
- Для чего можно использовать griffe?
- Генерация справочной документации по API библиотеки на Python. Выявление случайных изменений сигнатур в CI до выпуска релиза. Сравнение нового релиза с предыдущей версией на PyPI. Создание собственных инструментов для анализа публичного API кодовой базы.
- Как установить griffe?
- Установите Griffe с помощью pip: pip install griffe Выгрузите API пакета в формате JSON: griffe dump httpx fastapi Проверьте, содержит ли пакет несовместимые изменения API: griffe check mypackage --verbose
- Где скачать griffe?
- Исходный код и инструкции по установке — на GitHub: https://github.com/mkdocstrings/griffe
Описание создано ИИ на основе README проекта. Статистика GitHub обновляется ежедневно.
Похожие проекты
Веб-браузер API-документации: объединяет справочники для разработчиков в одном интерфейсе с поиском и офлайн-доступом.
Офлайн-браузер документации для поиска по локально установленным docset в формате Dash на Linux, Windows и других платформах.
Автоматически генерирует документацию API для проектов на Python 3 по модулям, пакетам и docstring без специальной настройки.
Набор инструментов для сравнения GraphQL-схем, поиска несовместимых изменений и похожих типов, а также проверки операций.
Полноценный парсер C99/C11 на чистом Python: строит AST исходного кода на C и не требует внешних зависимостей.