3. Ссылка на задеплоенную версию вашего приложения или сайта.
- Использован роутинг без перезагрузки страницы (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)
- Реализована игра онлайн между соперниками (WebSocket) (+30)
- Возможность подключения к различным играм (+15)
- Анимации кораблей (+10)
- Сохранение игры(возможность перезагружать страницу во время игры) (+10)
- Подсказки во время игры (+10)
- Проверка правильности расположения кораблей (+10)
- Победные баллы за сбитые корабли противника (+10)
- При окончании игры, итоговый бал записывается в таблицу рекордов (+5)
- Реализованны механика игры (фигурки постепенно падают, не перекрвают друг-друга) (+30)
- Реализованны различные фигуры (+15)
- Различные цвета фигур (+10)
- Управление с помощью клавиатуры (+15)
- Управление с помощью мыши или сенсорного экрана (+10)
- Возможность перезапустить игру (+5)
- Начисление баллов за собранные линии (+10)
- При окончании игры, итоговый бал записывается в таблицу рекордов (+5)
- Выбор сложности игры (+10)
- Анимации при верном ответе (+10)
- Начисление баллов за верные ответы (+10)
- Возможность перезапустить игру (+5)
- Анимирование переворотов карточек (+10)
- При окончании игры, итоговый бал записывается в таблицу рекордов (+5)
- Использован 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 (пароль: admin123)
- Большая просьба не совершать "разрушительных" действий, основные аккаунты защищены от критических изменений на стороне сервера, но не стоит банить и удалять всех остальных пользователей, для проверки - лучше создайте несколько своих пользователей. Спасибо за адекватность.
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/