Skip to content

Backend для мобильного приложения КАРДО

Notifications You must be signed in to change notification settings

kardo-mobile-app/kardo-mobile-app-back

Repository files navigation

Backend для мобильного приложения КАРДО

Приложение разрабатывал:

Владимир Баханович (vvbakhanovich).

Static Badge Static Badge Static Badge Static Badge Static Badge Static Badge Static Badge Static Badge Static Badge Static Badge Static Badge Static Badge


Приложение представляет мобильную версию сайта международной премии КАРДО с дополнительным фукнционалом социальной сети. Пользователи могут регистрироваться в приложении, смотреть, искать мероприятия, а также оставлять заявки на участие в этих мероприятиях. Дополнительно была реализована возможность создавать посты и прикреплять к ним изображения и видео. Пользователи могут лайкать посты, оставлять комментарии и добавлять других пользователей в друзья.

В приложении реализована аутентифицкаия и авторизация при помощи Spring Security 6. После регистрации, пользователь после входа в приложение получает два JWT токена (access и refresh токен). Для обращения по эндпоинтам используется Bearer аутентификация, в которой пользователь указывает свой access токен. В целях безопасности срок жизни access токена невелик (по умолчанию составляет 5 минут). По окончании срока жизни токена пользователь должен получить новый access токен, обратившись по соответвуюшему эндпоинту и указав при этом свой refresh токен (по умолчанию срок жизни refresh токена составляет 1 день). После окончания срока жизни refresh токена пользователю будет необходимо заново войти в приложение.

API документация доступна по ссылке.


Инструкция по сборке и запуску приложения:

Приложение написано на Java 17 и Spring Boot 3.

Перед сборкой и запуском приложения необходимо указать путь для хранения загружаемых файлов при помощи свойства server.file-storage.directory в application.properties.

Запустить приложение можно двумя способами.

Первый способ:

  • Предварительно создать БД POSTGRES не ниже версии 15 с именем kardo_db.
  • Установить и запустить Docker. Необходимо для выполнения тестов с использованием test-containers.
  • Собрать jar файл при помощи maven командой mvn clean install.
  • Запустить приложение командой java -jar kardo-moblie-app-back.jar.
  • Приложение будет доступно по адресу https:/localhost.

Второй способ:

  • Установить и запустить Docker.
  • Запустить контейнер командой docker compose up.
  • Приложение будет доступно по адресу https:/localhost.