Files
ayako/CHANGELOG.md
2026-05-01 15:13:02 +03:00

5.9 KiB
Raw Blame History

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 клиент с поддержкой всех endpoints
  • config.py - Управление конфигурацией
  • utils.py - Утилиты для форматирования и обработки ошибок
  • advanced_features.py - Продвинутые функции (кэширование, rate limiting, сессии)
  • test_bot.py - Unit тесты
  • requirements.txt - Зависимости Python
  • Dockerfile и 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

Если вы хотите улучшить бот:

  1. Форкните репозиторий
  2. Создайте ветку для вашей функции
  3. Коммитьте изменения
  4. Отправьте 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