Используемые технологии и инструменты:
- Java 11, Spring Boot, Spring Data JPA, Hibernate, Docker.
Данное приложение это — афиша. В этой афише можно предложить какое-либо событие от выставки до похода в кино и собрать компанию для участия в нём.
Приложение состоит из двух сервисов:
- основной сервис будет содержать всё необходимое для работы продукта;
- сервис статистики будет хранить количество просмотров и позволит делать различные выборки для анализа работы приложения.
API основного сервиса разделен на три части:
- публичная доступна без регистрации любому пользователю сети и должен предоставлять возможности поиска и фильтрации событий;
- закрытая доступна только авторизованным пользователям и предназначена для создания и редактирования событий и для подачи заявок на участие в событиях;
- административная часть для администраторов сервиса. Предназначена для добавления, изменения и удаления категорий для событий, управления пользователями, модераций событий, комментариев.
Сервис статистики собирает информацию о посещении приложения. Во-первых, о количестве обращений пользователей к спискам событий и, во-вторых, о количестве запросов к подробной информации о событии. На основе этой информации должна формироваться статистика о работе приложения.
Для обоих сервисов имеютяс подробные спецификации API:
- спецификация основного сервиса: API основного сервиса
- спецификация сервиса статистики: API сервиса статистика