Skip to content

bomzheg/Shvatka

Repository files navigation

new shvatka bot

wakatime coverage

Движок для ночной поисковой игры Схватка (похожа на Дозоры, Энакунтер)

Позволяет проводить планировать и проводить игры.

Core-функционал:

  • редактор сценария игры,
  • управление подготовкой к игре,
  • формирование команды капитаном,
  • назначение заместителей капитана с разными полномочиями,
  • сборка заявок на игру,
  • проведение игры,
  • информирование организаторов о ходе игры,
  • формирование результатов игры,
  • сохранение статистики прошедших игр

How to run without docker:

  1. cp config_dist config
  2. Заполнить конфиги в config
  3. Заполнить урл бд в alembic.ini
  4. Запустить и применить миграции python -m alembic upgrade head
uv pip install .
export BOT_PATH=$PWD
shvatka-tgbot

How to run with Docker

  1. cp config_dist config
  2. Заполнить конфиги в config
  3. Заполнить урл бд в alembic.ini
  4. Запустить и применить миграции docker-compose run cli -c "python -m alembic upgrade head"
  5. docker-compose up -d

How to fix deps

uv pip compile pyproject.toml > lock.txt

How to test

pytest tests

or only unittests (faster):

pytest tests/unit

Linters

Linux:

ruff format . && ruff --fix . && mypy .

Windows:

ruff format . ; ruff --fix . ; mypy .