Общее описание проекта

Необходимо разработать современный игровой вебсайг с полным функционалом управления пользователями. Сайт должен иметь: тёмное фэнтези оформление (ориентироваться на предоставленные референсные макеты), личный кабинет, систему авторизации и пополнения баланса, а также стабильную административную панель. Все компоненты связываются продуманным и строгим API.

Технологии и стек (приоритет)

Фронтенд

  • React + Next.js (основной приоритет)
  • Альтернатива: Vue + Nuxt / Vite (любые)

Бэкенд

  • Node.js + NestJS (основной приоритет)
  • Альтернатива: Laravel (PHP) или FastApi (питон)

База данных

  • PostgreSQL (основной приоритет)
  • Альтернатива: MySQL

Основные страницы и разделы

  • Главная - лендинг с фэнтези подложкой
  • Аутентификация: логин, регистрация, восстановление пароля
  • Личный кабинет:
    • Профиль (юзернейм, email, аватар, смена шифра)
    • Баланс и детальная кнопка пополнения
    • Просмотр истории транзакций (пополнения/траты)
    • Ввод промо-кодов и системы скидок
    • Поддержка через тикет-систему (связь с администраторов через возвратное действие)
    • Активность: показывать дату и IP логинов (контроль сессий)
    • Будущий раздел Мест (виртуальные питомцы) сверстан заглушкой «Coming soon»

Требования к функционалу и безопасность

  • Обязательная сильная защита: эшелонированная - JWT cookie или bearer, rate limit на ввод и API методы.
  • Пароли обрабатывать строго (хеши - argon/bcrypt), все персональная шифровка при хранение журнала действий
  • Аудит-лог - обязательный проток (каждое действие Admin/web пользователя обрамлено лога
  • регистрация только через подтверждение E-mail (верификация)
  • Гибкая работа с промокодами (create/delete через админа)
  • Web-пополнение баланса и инграунд hook- передачи поставщика
  • Реактивный REST-ful поток с префиксом подключения : /api/v1

Опциональ- срасёт

Полная документация метод URL(ов должно постман/swgi представленна файлам в собранении цечов
Включается Docker-compose - файла регрепов (инструкция деплоя должна дать ясно сбор отзаказччу)