Приложение для управления пользователями и их цифровыми подписками. Реализовано на базе Spring Boot, использует PostgreSQL и Docker Compose.
- Java 17
- Spring Boot 3
- Spring Data JPA
- Spring Security with OAuth2
- Hibernate
- PostgreSQL
- Flyway
- Docker, Docker Compose
- Maven
- SLF4J (Logback)
- Swagger
- JUnit
- Testcontainers
- Jacoco
- CI/CD
POST /auth/register
- зарегистрировать в системе пользователя (создать пользователя может только SUPERVISOR)POST /auth/login
- войти в систему пользователюGET /users/{id}
— получить пользователяPUT /users/{id}
— обновить пользователяDELETE /users/{id}
— удалить пользователя
POST /users/{id}/subscriptions
— добавить подпискуGET /users/{id}/subscriptions
— список подписокDELETE /users/{id}/subscriptions/{sub_id}
— удалить подписку
GET /subscriptions/top
— топ-3 самых популярных подписок
docker-compose up --build -d
docker compose down
docker rmi $(docker images --format "{{.ID}}") --force
mvn verify
http://localhost:8888/api
(со Swagger)
- 84%