CLI инструмент для работы с Python проектами.
PyFlow - это инструмент командной строки, разработанный для упрощения работы с Python проектами. Он предоставляет интерфейс для управления зависимостями и визуализацией для анализа структуры кода и других задач разработки.
- Автоматическое извлечение структуры Python проекта, включая:
- Иерархию директорий и файлов
- Классы и их методы
- Функции
- Импорты и зависимости между модулями
- Поддержка анализа как локальных проектов, так и удаленных репозиториев
- Генерация интерактивных HTML-графов для визуализации структуры проекта
- Два режима визуализации:
- Базовый режим для стандартного отображения
- Режим сравнения для выделения различий между версиями
- Объединение графов с дополнительными элементами
- Фильтрация графов по типам узлов и рёбер
- Сжатие архитектурных элементов
- Поиск зависимостей:
- Поиск элементов, используемых указанными компонентами
- Поиск элементов, зависящих от указанных компонентов
- Настраиваемая глубина поиска зависимостей
- Python >= 3.10
- Зависимости указаны в
requirements.txt
pip install -e .- gitpython==3.1.43 - для работы с Git репозиториями
- pyvis==0.3.2 - для визуализации
- networkx==3.2.1 - для работы с графами
- yapf==0.43.0 - для форматирования кода
- black==24.1.1 - для форматирования кода
- pytest==8.0.0 - для тестирования
.
├── src/ # Исходный код
│ ├── core/ # Основная логика
│ ├── interfaces/ # Интерфейсы (CLI)
│ └── utils/ # Вспомогательные функции
├── tests/ # Тесты
├── requirements.txt # Зависимости проекта
├── setup.py # Конфигурация установки
После установки вы можете использовать команду pyflow в терминале:
pyflow --helppytest tests/