Skip to content

SLKarol/card-game-fool-api

Repository files navigation

Карточная игра в подкидного дурака.

Основная часть кода выполнена в виде SQL-процедур. Бэкенд используется для обращения к этим процедурам и для создания игрового чата. В игре ещё можно сделать некоторые вещи, но основная часть готова. По мере времени и сил будут добавляться новшества.

БД сделана в PostgreSQL. Вот простые действия по её установке

  1. Из каталога sql в базе данных выполнить скрипт 01_dump.sql - это создаст нужные таблицы, процедуры.
  2. Из каталога sql в базе данных выполнить скрипт 02_suit.sql - он создаёт массив карточных мастей. Если всё сделано правильно, то индекс будет начинаться с 1.
  3. Из каталога sql в базе данных выполнить скрипт 03_playing_card.sql - - он создаёт массив игровых карт. Если всё сделано правильно, то индекс будет начинаться с 1.

Серверная часть сделана на nest. Для её работы Вам нужно сделать следующее:

  1. В корне проекта создать файл .env
  2. В файле .env записать переменную DATABASE_URL - это строка подключения к БД. Пример: DATABASE_URL=postgres://postgres:postgres@localhost:5432/card-fool
  3. В файле .env записать переменную JWT_SECRET - секретная фраза для создания токена

Запуск приложения

# development
$ npm run start

# production mode
$ npm run start:prod

Сейчас нет никаких процедур оповещения по почте, что игрок приглашён в игру. Возможно это когда-нибудь будет.

Авторизация

Сейчас для регистрации можно использовать какие-нибудь несуществующие адреса, например [email protected], но кто знает, может в будущем будет приходить оповещение по почте или напоминание о пароле. Так что какую почту использовать- решать Вам.