evrone.solutions
evrone/
tournament_
№30
Ивенты

Evrone Tournament

турнирная платформа

Сетки single/double elimination, лиги, результаты, брекеты в реальном времени.

Турнирные сетки (single/double elimination, круговая система, швейцарская), лиги и сезоны, регистрация команд и участников, расписание матчей, внесение результатов и автоматический подсчёт таблиц, профили игроков со статистикой, брекеты в реальном времени для зрителей.

Что входит в MVP

Один турнир — сетка, результаты, таблица.

Кому подходит

Киберспорт, любительские лиги, спортивные федерации.

Техническое задание

tournament-tz.md · 4,0 КБ · обновлено 02.08.2026
↓ Скачать ТЗ (.md)

ТЗ: Evrone Tournament — турнирная платформа

Демонстрационная версия документа · категория «Ивенты» · №30

Это демонстрационное техническое задание: оно показывает структуру и глубину документа, который передаётся вместе с прототипом. Боевое ТЗ по этому солюшену готовится и заменит этот файл.

1. Суть решения

Сетки single/double elimination, лиги, результаты, брекеты в реальном времени.

Турнирные сетки (single/double elimination, круговая система, швейцарская), лиги и сезоны, регистрация команд и участников, расписание матчей, внесение результатов и автоматический подсчёт таблиц, профили игроков со статистикой, брекеты в реальном времени для зрителей.

2. Технологический стек

Слой Решение
Backend Ruby on Rails 8, PostgreSQL
Frontend Hotwire (Turbo + Stimulus), Tailwind CSS
Фоновые задачи Solid Queue
Файлы Active Storage, S3-совместимое хранилище
Деплой Docker, Kamal, production + staging

3. Роли

  • Игрок
  • Капитан команды
  • Организатор
  • Судья

4. Модель данных

4.1. Tournament

format: enum # single elimination, double elimination, круговая, швейцарская
state: enum
season_id: references, nullable

4.2. Match

tournament_id: references
round: integer
participants: jsonb
result: jsonb
state: enum

4.3. Participant

kind: enum # игрок, команда
profile: jsonb
stats: jsonb

5. Ключевые сценарии

  1. Организатор создаёт турнир, выбирает формат и открывает регистрацию
  2. Сетка строится автоматически, расписание матчей публикуется
  3. Судья вносит результат, таблицы и сетка пересчитываются
  4. Зрители смотрят брекет в реальном времени

6. Интеграции

  • Уведомления участникам
  • Публичный виджет сетки
  • Импорт составов команд

7. Нефункциональные требования

  • Серверный рендеринг, работоспособность ключевых страниц без JavaScript
  • Мобильная адаптивность обязательна
  • Роли и права проверяются на уровне сервера, а не интерфейса
  • Логирование действий пользователей по значимым операциям
  • Покрытие тестами моделей и ключевых сценариев
  • Развёртывание одной командой, окружения production и staging

8. Состав MVP

Один турнир — сетка, результаты, таблица.

9. Критерии приёмки

  1. Все сценарии из раздела 5 проходят end-to-end на тестовом стенде
  2. Роли из раздела 3 видят только то, что им положено
  3. Интеграции из раздела 6 работают через слой адаптеров и переключаются конфигурацией
  4. Прототип разворачивается из репозитория одной командой
  5. Документация по запуску и переменным окружения лежит в README
// расчёт доработок

Какие вам нужны доработки?

Опишите своими словами, что хотите изменить или добавить к прототипу — интеграции, дизайн, новые механики. AI сопоставит запрос с ТЗ солюшена и сразу покажет вилку часов и стоимости.

Оценка считается по ТЗ Evrone Tournament
Финальную смету подтверждает инженер
Оценка появится через несколько секунд
// заявка

Купить Evrone Tournament

500 000 ₽
прототип + исходный код + ТЗ

Оставьте контакты — свяжемся, покажем прототип вживую и договоримся о передаче.

Нажимая, вы соглашаетесь с политикой обработки ПД