Skip to content
Nikita Soloviev edited this page Aug 1, 2017 · 13 revisions

Проект Code Battle

Старт 24 июля 2017 года.

Разработчиками являются активные участники Slack сообщества образовательной платформы Hexlet.
Для реализации проекта в качестве основы взят стандартный проект на фреймворке Phoenix, который в свою очередь написан на функциональном языке Elixir. Для фронтэнда задействован ReactJs, для стилей - фреймворк Bootstrap, а для тестов используется язык программирования Clojure.

1 Этап

Во время реализации первого этапа разработки выполнена подготовка необходимой инфраструктуры рабочего окружения:

  • подключен сервис Travis CI, необходимый для непрерывной интеграции кода
  • используя Docker - compose настроена автоматизация среды разработки
  • сборщик модулей Webpack 2 заменил brunch
  • в качестве шаблонизатора настроен phoenix_slime
  • используя ansible написан playbook для настройки окружения и управления конфигурациями
  • в качестве инструмента проверки кода подключен linter credo
  • начата разработка модуля авторизации через Github
  • добавлена возможность интернационализации ( i18n)
  • проект развернут на облачной платформе Heroku
  • подключен bootstrap
  • выполнен апгрейд фреймворка Phoenix до версии 1.3.0
  • начата разработка игрового процесса
  • выполнено обновление Elixir с версии 1.45 до 1.5

Для реализации 1 этапа за 7 дней 14-ю разработчиками выполнено 103 коммита, а мейнтейнерами принято 29 пуллреквестов, закрыто 13 проблем. Всего в команде разработчиков 27 человек

2 Этап

Следующей целью является написание упрощенного, но работоспособного прототипа игрового процесса. Можно выделить наиболее главные текущие задачи проекта:

  • завершить реализацию автризации через гитхаб
  • упростить развертывания проекта на локальной машине (Ubuntu, Mac)
  • создать предыгровую страницу и страницу со списком игр
  • реализовать роутинг между предыгровой страницей и игрой с созданием Pid'а
  • создать общий чат, а затем уникальный чат для каждой игры
  • создать возможность для спектаторов подключаться к игровому процессу