5.9 KiB
5.9 KiB
CHANGELOG
[1.0.0] - 2026-05-01
Added
- ✨ Полная поддержка VNDB API v2 (Kana)
- 🎮 Поиск визуальных новелл по названию, языку, платформе, тегам, рейтингу
- 👥 Поиск персонажей по имени, полу, черт характера
- 🎬 Поиск релизов по названию, платформе, типу
- 👨💼 Поиск сотрудников (сценаристы, художники, композиторы)
- 🏢 Поиск продюсеров и издателей
- 🏷️ Просмотр популярных тегов
- ✨ Просмотр черт характера персонажей
- 💬 Получение случайных цитат
- 📊 Статистика базы данных VNDB
- 📋 Информация о схеме API
- 🔐 Поддержка авторизации с помощью API токена
Features
- ⚡ Асинхронные запросы для быстрого отклика
- 🔄 Обработка ошибок с пользовательскими сообщениями
- 📝 Подробное логирование для отладки
- 🎨 Красивое форматирование ответов с поддержкой Markdown
- 📦 Полная поддержка Docker и Docker Compose
- 🧪 Unit тесты для основных функций
- ⚙️ Гибкая конфигурация через переменные окружения
Architecture
bot.py- Основной модуль бота с обработчиками командvndb_client.py- VNDB API клиент с поддержкой всех endpointsconfig.py- Управление конфигурациейutils.py- Утилиты для форматирования и обработки ошибокadvanced_features.py- Продвинутые функции (кэширование, rate limiting, сессии)test_bot.py- Unit тестыrequirements.txt- Зависимости PythonDockerfileиdocker-compose.yml- Контейнеризация
Documentation
- 📚 README.md с полной документацией
- 📖 INSTALLATION.md с пошаговыми инструкциями установки
- 🔍 Inline документация в исходном коде
- 📝 Примеры использования для каждой команды
Commands
/start- Начало работы с ботом/help- Справка по всем командам/search <название>- Поиск визуальных новелл/char <имя>- Поиск персонажей/release <название>- Поиск релизов/staff <имя>- Поиск сотрудников/producer <название>- Поиск продюсеров/tag- Список тегов/trait- Список черт характера/quote [число]- Случайные цитаты/stats- Статистика базы данных/schema- Информация о схеме API/authinfo- Информация об авторизации
Technical Details
- Python 3.8+
- python-telegram-bot 21.0
- httpx для асинхронных HTTP запросов
- Асинхронная обработка с asyncio
- Полная поддержка rate limiting API VNDB (200 запросов за 5 минут)
Known Limitations
- Максимум 100 результатов на странице (ограничение API)
- Функции управления списками требуют валидный API токен
- Время выполнения одного запроса не должно превышать 3 секунды (ограничение API)
Future Plans
- 🔄 Добавить пагинацию результатов с кнопками навигации
- 💾 Добавить кэширование популярных запросов
- 📊 Добавить статистику использования бота
- 🌍 Поддержка разных языков интерфейса
- ⚙️ Админ панель для управления ботом
- 🔔 Уведомления о новых релизах избранных ВН
- 📱 Поддержка inline режима для использования в других чатах
Version History
v1.0.0 (Current)
- Initial release with full VNDB API v2 support
Dependencies
Core
- python-telegram-bot==21.0 - Telegram Bot API
- python-dotenv==1.0.0 - Environment variables
- aiohttp==3.9.1 - Async HTTP client
- requests==2.31.0 - HTTP library
Testing
- pytest==7.4.0 - Testing framework
- pytest-asyncio==0.21.0 - Async support for pytest
Development (Optional)
- black - Code formatter
- pylint - Code linter
- mypy - Type checker
Contributing
Если вы хотите улучшить бот:
- Форкните репозиторий
- Создайте ветку для вашей функции
- Коммитьте изменения
- Отправьте Pull Request
License
Данные, полученные через VNDB API, подлежат Data License VNDB.
Support
Если у вас есть вопросы или проблемы:
- Проверьте документацию (README.md, INSTALLATION.md)
- Проверьте файлы логов
- Убедитесь, что API доступен
- Проверьте правильность конфигурации
Acknowledgments
- VNDB (Visual Novel Database) за отличную базу данных и API
- python-telegram-bot за удобную библиотеку
- Python асинхронное сообщество
Последнее обновление: 1 мая 2026