Проектирование, дизайн и разработка проекта для "аддона в Dota2"

Добавлено 30 мая 2024 в 18:12
Проектирование, дизайн и разработка проекта для "аддона в Dota2". Проект состоит из 3х основных частей/репозиториев.

WEB-клиент (React, ReactQuery). SPA приложение для отображения лучших игроков, сыгранных матчей, статистики матчей, героев и т.д.

Сервер (Nest.js, PostgreSQL, PrismaORM). Хранит информацию обо всех сыгранных играх, статистику и рейтинг игроков.
  • Получение данных от Steam API очень ограниченно, поэтому в том числе используется эмуляция "клиента Dota2" для получения некоторых данных;
  • Автоматическая генерация документации (Swagger);

Карта для Dota2 (React, TS, Webback), наверно представляет наименьший интерес для заказчиков на этом сайте, и сам я не планирую делать подобного на заказ. Но это ядро всего проекта, и вот пара особенностей:
  • Данные из игры на сервер передаются с защитой от подделки запросов;
  • Заложена плотная интеграция с сервером (можно с сервера менять правила в матче, отправлять метрики из матча в прямом эфире);
  • Пользователи положительно отмечают продуманный UI, удобство настроек и функции которые помогают начать матч намного быстрее чем обычно;
  • Логирование ошибок в игре через свой сервер;

Технические особенности:
  • Использование TypeScript во всех репозиториях;
  • Отдельный пакет с типизацией основных сущностей, в котором в том числе присутствуют "контракты" написанные с ZOD, для валидации форм и данных;
  • Автоматическая доставка обновлений с помощью Github Actions;

Ссылка на сайт: dota1x1.com
21bb455fd6 B41048d616 047e62c471