Skip to content

Conversation

@LoginovskyMax
Copy link
Owner

@LoginovskyMax LoginovskyMax commented Feb 27, 2023

1. Ссылка на задание

2. Скриншот результата выполнения задания:

image

3. Ссылка на задеплоенную версию вашего приложения или сайта.

4. 31.01.2023 / 28.02.2023.

5.Ваша самопроверка с предварительной оценкой:

Обеще количество баллов 620:

Приложение : 180 баллов

  • Использован роутинг без перезагрузки страницы (SPA): (+30)
  • Есть возможность переключения языков (+10)
  • Приложение выполнено в едином стиле (+5)
  • Приложение работает на телефоне/планшете/PC (+20)
  • Реализована кастомизация приложения(цветовые схемы) (+5)
  • Возможность оставлять отзывы и выставлять рейтинг к играм (+20)
  • Реализована страница пользователя (+10)
  • Реализована страница с играми (+10)
  • Реализованы различные уровни доступа ( незарегистрированный пользователь, пользователь, модератор, админ) (+10)
  • Реализованная возможность изменять права доступа для аднимитратора (нет возможности убрать право доступа "admin" у 4 основных пользователя: Admin, Max, Olya, Jerubrin) (+5)
  • Возможность банить пользователей (+5)
  • Возможность удалять пользователей (нет возможности убрать удалить 4 основных пользователя: Admin, Max, Olya, Jerubrin) (+5)
  • Аутентификация пользователя (+10)
  • Восстановление и изменение пароля пользователя (+10)
  • Реализованы различные модальные окна (+10)
  • Анимирование всех интерактивных элементов (+5)
  • Реализованно ограницение к играм, для пользователей со статусом "banned" (+10)

Игры внутри приложения:250 баллов

1. Морской бой (100 баллов)

  • Реализована игра онлайн между соперниками (WebSocket) (+30)
  • Возможность подключения к различным играм (+15)
  • Анимации кораблей (+10)
  • Сохранение игры(возможность перезагружать страницу во время игры) (+10)
  • Подсказки во время игры (+10)
  • Проверка правильности расположения кораблей (+10)
  • Победные баллы за сбитые корабли противника (+10)
  • При окончании игры, итоговый бал записывается в таблицу рекордов (+5)

2. Тетрис (100 баллов)

  • Реализованны механика игры (фигурки постепенно падают, не перекрвают друг-друга) (+30)
  • Реализованны различные фигуры (+15)
  • Различные цвета фигур (+10)
  • Управление с помощью клавиатуры (+15)
  • Управление с помощью мыши или сенсорного экрана (+10)
  • Возможность перезапустить игру (+5)
  • Начисление баллов за собранные линии (+10)
  • При окончании игры, итоговый бал записывается в таблицу рекордов (+5)

3. Игра на память (50 баллов)

  • Выбор сложности игры (+10)
  • Анимации при верном ответе (+10)
  • Начисление баллов за верные ответы (+10)
  • Возможность перезапустить игру (+5)
  • Анимирование переворотов карточек (+10)
  • При окончании игры, итоговый бал записывается в таблицу рекордов (+5)

Серверная часть 190 баллов

  • Использован REST API (+10)
  • Реализован nodejs и express (+30)
  • Подключение и работа с БД (+15)
  • Используется ORM(mongoose) (+15)
  • Реализованна логика сортировки победителей (в игре и кабинете пользователя) (+10)
  • использование JWT токенов для авторизации (+10)
  • Реализована работа с WebSocket (+20)
  • Реализована аутентификация в WebSocket (+10)
  • Реализована распределелие клиентов в WebSocket (может проходить одновременно несколько игр, сообщения отправляются правильным пользователям) (+15)
  • Реализованна рассылка email-сообщений при создании пользователя, сброса и изменении пароля (+15)
  • Используется email-клиент с собственным доменном (+10)
  • Email-сообщения имеют inline стили (сообщения имеют свою верстку) (+10)
  • Сервер отдаёт корректные ответы, отдаёт HTTP ошибки с нормальными body, по которым можно понять, что произошло, пишет читаемые логи (+20)

Дополнительно, для проверяющего:

Пользователь Admin

Для проверки возможностей администратора используйте пользователя Admin (пароль: admin123)

  • Большая просьба не совершать "разрушительных" действий, основные аккаунты защищены от критических изменений на стороне сервера, но не стоит банить и удалять всех остальных пользователей, для проверки - лучше создайте несколько своих пользователей. Спасибо за адекватность.

Backend

Backend доступен по адресу: https://rsgames.online:8888/ все комманды и описание взаимодействия с ними доступны в README.md файле репозитория.

Развернуть проект на локальной машине

Для запуска проекта локально - нужны специальные параметры в .env файле, для получения локальных параметров. Для получения .env файла с параметрами - обратитесь к jerubrin
После получания файла с параметрами, положите его в корень проекта (имя фала должно быть именно .env), затем выполните комманду: npm run dev-all.
После запуска, можете открыть проек локально: http://localhost:5173/RsClone, backend будет доступен по адресу: https://localhost:8888/ или http://localhost:8000/

jerubrin and others added 30 commits February 5, 2023 17:17
jerubrin and others added 30 commits February 25, 2023 12:13
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants