Project File Combiner
Project File Combiner - это мощный инструмент Python, который объединяет все файлы вашего проекта в единый текстовый файл с красивым цветным логированием процесса в консоли. Идеальное решение для создания снимков кодовой базы, архивирования проектов или подготовки кода к обзору. ✨ Основные функции
1.Автоматическое объединение всех файлов проекта в один текстовый файл
2.Цветное логирование в консоли с визуальной индикацией разных типов сообщений
- 
Интеллектуальное игнорирование системных файлов и бинарных данных
 - 
Четкое разделение файлов в выходном документе с заголовками
 - 
Гибкая конфигурация через аргументы командной строки
 - 
Поддержка UTF-8 для корректной обработки текстовых файлов
 
🚀 Быстрый старт Установка
- Клонируйте репозиторий:
 
git clone https://github.com/mrk-coder/project-file-combiner.git cd project-file-combiner
- Использование
 
python combine_project.py -d path/to/project -o output.txt
- Аргументы командной строки
 
3.1 Аргумент Описание По умолчанию -d, --directory Путь к корневой директории проекта Текущая директория (.) -o, --output Имя выходного файла combined_project.txt
🖥 Пример вывода в консоли
https://via.placeholder.com/800x300/2c3e50/ecf0f1?text=Colorful+Console+Output+Example
Консольный вывод включает:
- 
Синие информационные сообщения
 - 
Зеленые сообщения об успешном завершении
 - 
Желтые предупреждения
 - 
Красные сообщения об ошибках
 
⚙️ Особенности реализации Автоматическое игнорирование
Скрипт автоматически пропускает:
- 
Системные директории (.git, pycache, node_modules, venv)
 - 
Бинарные файлы (изображения, PDF, исполняемые файлы)
 - 
Скрытые файлы (начинающиеся с точки)
 - 
Сам выходной файл (чтобы избежать рекурсии)
 - 
Настройка
 
Вы можете легко изменить параметры игнорирования, отредактировав функцию should_ignore() в коде: python
def should_ignore(path, output_file): ignore_dirs = ['.git', 'pycache', ...]
ignore_exts = ['.pyc', '.png', ...]
📝 Требования
Python 3.6 или новее
Терминал с поддержкой ANSI-цветов (большинство современных терминалов)