- Скачайте среду выполнения node.js
- Клонируйте git репозиторий на свое устройство
- Откройте консоль в корневой папке и напишите
npm i
- Создайте файл .env и добавте поля со своими значениями
NEXTAUTH_SECRET= #Секрет, например любая комбинация символов
NEXTAUTH_URL=http://localhost:3000/
MONGO_URL= #Ссылка на mongoDB
- Запустите сервер разработки
npm run dev
# или
yarn dev
# или
pnpm dev
# или
bun dev
Откройте http://localhost:3000 в браузере, чтобы увидеть результат.
id
(Number): идентификатор игрыcreator
(String): создатель игрыsize
(Number): размер игрыrules
(String): правила игрыedit
(Boolean): возможность редактированияships
(Array): массив кораблейid
(Number): идентификатор корабляplace
(Number): местоположение корабляprizeId
(Number): идентификатор приза
users
(Array): массив пользователейname
(String): имя пользователяamount
(Number): количествоshot
(Array): массив выстрелов
id
(Number): идентификатор призаcreator
(String): создатель призаtitle
(String): название призаdescription
(String): описание призаplayedout
(Boolean): флаг, указывающий, был ли приз врученplayedout_name
(String): имя участника, которому был вручен приз
name
(String): имя пользователяpassword
(String): пароль пользователяrole
(String): роль пользователя
- Форма регистрации и входа
- Быстрое встраивание новых провайдеров, таких как google и тд
- Управление правами доступа и аутентификация игроков
- Отображение состояния кораблей
- Управление выстрелами по нажатию на ячейку поля
- Проверка правильности ходов (т.е. нельзя стрелять в уже подбитые корабли)
- Отображение результатов выстрела (попадание, промах, потопление корабля)
- Хранение и обновление данных и состояний игры (например, расположение кораблей, состояние игровых полей)
- Сохранение и загрузка игровых сессий
- Отображение игровых элементов и интерфейса
- Адаптивный и удобный дизайн
- Легко изменяемый