# Сырой текст задания → Плоская карточка ## Описание Данный проект реализует конвертацию «сырого» текста задания в формат **плоской карточки** (flat card). Карточка представляет собой упрощённую, визуально чистую версию исходного документа, пригодную для быстрого просмотра и дальнейшего использования в системах управления задачами или в качестве шаблона для презентаций. ## Структура проекта ``` project/ ├── src/ │ ├── main.py # Точка входа – скрипт конвертации │ ├── utils.py # Вспомогательные функции (парсинг, форматирование) │ └── templates/ # Шаблоны карточек в формате Markdown / HTML ├── tests/ │ └── test_main.py # Юнит‑тесты ├── requirements.txt # Зависимости проекта └── README.md # Это файл ``` ## Установка зависимостей ```bash # Создайте виртуальное окружение (рекомендуется) python -m venv .venv source .venv/bin/activate # Windows: .\.venv\Scripts\activate # Установите зависимости из requirements.txt pip install -r requirements.txt ``` `requirements.txt` содержит только необходимые библиотеки, например: ```text Jinja2>=3.0 # для шаблонизации карточек Markdown>=3.4 # при необходимости конвертации Markdown в HTML ``` ## Запуск ### Конвертация одного файла ```bash python src/main.py path/to/raw_task.txt --output path/to/card.md ``` - `path/to/raw_task.txt` – путь к исходному файлу с «сырым» текстом задания. - `--output` (необязательно) – куда сохранить результат. Если не указано, вывод будет в stdout. ### Конвертация всех файлов из каталога ```bash python src/main.py path/to/raw_tasks/ --recursive --output-dir path/to/cards/ ``` - `--recursive` обрабатывает все `.txt` файлы внутри указанного каталога и его подпапок. - `--output-dir` – каталог, куда будут сохранены карточки. ## Пример использования ```bash # Предположим, у нас есть файл task1.txt со следующим содержанием: # # # Задача 1 # Описание: Написать скрипт, который конвертирует сырой текст в плоскую карточку. # Требования: # - Использовать Python 3.8+ # - Сохранять результат в Markdown python src/main.py task1.txt --output card_task1.md ``` После выполнения будет создан файл `card_task1.md` со следующим содержимым: ```markdown # Задача 1 **Описание:** Написать скрипт, который конвертирует сырой текст в плоскую карточку. ## Требования - Использовать Python 3.8+ - Сохранять результат в Markdown ``` ## Тесты ```bash pytest tests/ ``` Все тесты находятся в каталоге `tests/` и проверяют корректность парсинга, форматирования и генерации карточек. ## Лицензия MIT License – см. файл `LICENSE`. ---