Skip to content

devShurakov/java-Explore-With-Me

Repository files navigation

Explore With Me. Cервис поиска интересных событий.

Пэт проект в рамках учебной программы Яндекс.

Explore With Me API Tests

Описание:

Бэкенд сервиса, который позволяет находить интересные мероприятия вокруг себя, а также размещать свои. Пример интерфейса:

Alt text

Архитектура приложения представлена двумя частями, взаимодействующими между собой: основной сервис и сервис статистики.

API основного сервиса разделён на три части:

Публичное API, доступна без регистрации любому пользователю сети:

  • Сортировка списка событий по количеству просмотров либо по датам событий.
  • Просмотр подробной информации о конкретном событии.
  • Есть возможность получения всех имеющихся категорий и подборок событий (такие подборки могут составлять администраторы ресурса).
  • Каждый публичный запрос для получения списка событий или полной информации о мероприятии фиксируется сервисом статистики.

Закрытое API, доступна только авторизованным пользователям:

  • Пользователи могут добавлять в приложение новые мероприятия, редактировать их и просматривать после добавления.
  • Могут подавать заявки на участие в интересующих мероприятиях.
  • Создатель мероприятия имеет возможность подтверждать заявки, которые отправили другие пользователи сервиса.

Административное API, для администраторов сервиса:

  • Добавление, изменение и удаление категорий для событий.
  • Возможность добавлять, удалять и закреплять на главной странице подборки мероприятий.
  • Модерацию событий, размещённых пользователями, — публикация или отклонение.
  • Управление пользователями — добавление, просмотр и удаление.

Сервис статистики:

  • Информация о количестве обращений пользователей к спискам событий.
  • Информация о количестве запросов к подробной информации о событии.
  • Отчет по собраной ринформации.

Спецификация:

Спецификации основного сервиса и сервиса статистики можно посмотреть с помощью Swagger

Шаблоны проектирования:

В приложении применяется один из шаблонов проектирования - Data Transfer Object(DTO Pattern).

Тестирование проекта:

Проверить работоспособность приложения, можно с помощью готовой коллекции тестов, например в Postman.

Как запускать приложение ?

  • склонировать и открыть проект в IntelliJ IDEA
  • запустить приложение Docker
  • выполнения сборку проекта
  • далее в терминал запустить команду docker compose up и дождаться успешного запуска проекта в контейнерах Docker.

Технологический стек:

Java 11 11 Spring Boot 2.7.2 2.7.2 Postgres SQL Postgres SQL Lombock hib Apache Docker Git

вверх страницы

About

Бэкенд сервиса поиска интересных мероприятий вокруг себя и участия в них. Аналог Афиши.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors