Игровой бот для социальной сети ВКонтакте

Open Source Создан: 12.11.2025 GitHub

Ссылка:
🌐 Исходный code

Технологии:
Python · aiohttp · Redis · PostgreSQL · RabbitMQ

Роль:
Backend-разработчик — API, FSM, деплой, инфраструктура


В рамках стажировочного курса компании KTS требовалось разработать игрового бота для социальной сети ВКонтакте, который должен был быть: - устойчивым к перезагрузкам и зависаниям,
- защищённым от блокировок со стороны VK API,
- способным сохранять и восстанавливать состояние игры,
- готовым к работе под нагрузкой с большим количеством сообщений.


Задача:

Создать бота для сообществ ВКонтакте, реализующего две игровые механики: - 🧩 Игра "100 к 1"
- 🎓 Викторина

При этом следовало: - разработать API и систему авторизации,
- реализовать FSM-логику для управления состояниями игры,
- выполнить деплой и хостинг,
- следовать Clean Architecture в рамках корпоративных стандартов KTS,
- обеспечить покрытие тестами более 90% кода.


Действие:

  • Реализовал бэкенд на aiohttp, без использования готовых VK-фреймворков — все взаимодействия выполнялись напрямую через VK API.
  • Спроектировал и задокументировал REST API.
  • Разработал авторизацию пользователей и обработку игровых событий.
  • Создал FSM (Finite State Machine) для управления состояниями игры.
  • Настроил инфраструктуру с использованием Redis, PostgreSQL и RabbitMQ для очередей сообщений и хранения данных.
  • Настроил деплой и хостинг, обеспечив отказоустойчивость и сохранение состояния при перезагрузке.
  • Организовал систему автоматического тестирования с покрытием кода > 90%.
  • Все изменения проходили код-ревью и аппрув ведущего разработчика KTS.

Результат

Создан отказоустойчивый игровой бот для ВКонтакте с двумя игровыми режимами, безопасный для VK API и готовый к использованию в реальных сообществах.
Бот сохраняет прогресс игр при сбоях и автоматически восстанавливает состояние после перезапуска.

Итог:
- проект успешно принят менторами KTS;
- получен сертификат об успешном окончании стажировки;
- исходный код опубликован в открытом доступе. - пройдена защита проекта


🔧 Ключевые возможности проекта

  • 🎯 Игра "100 к 1" и викторина для сообществ
  • 🧠 FSM для управления игровыми состояниями
  • 🔐 Авторизация и API-документация
  • 🗄️ Хранение данных в PostgreSQL и Redis
  • 📬 Очереди сообщений через RabbitMQ
  • 🧪 Тестовое покрытие > 90%
Используемые технологии
Nginx Docker RMQ PostgreSQL Linux Python
Дополнительная информация
  • Тип проекта: Open Source
  • Дата создания: 12.11.2025
  • Последнее обновление: 12.11.2025