https://github.com/ptrvsrg/daily-helper-api
REST API приложения Daily Helper, разработанного для управления задачами в рамках различных проектов
https://github.com/ptrvsrg/daily-helper-api
docker docker-compose java jwt liquibase mariadb maven openapi spring spring-boot spring-data-jpa spring-mail spring-security spring-validation sql swagger thymeleaf
Last synced: 8 months ago
JSON representation
REST API приложения Daily Helper, разработанного для управления задачами в рамках различных проектов
- Host: GitHub
- URL: https://github.com/ptrvsrg/daily-helper-api
- Owner: ptrvsrg
- License: mit
- Created: 2023-08-16T13:20:09.000Z (over 2 years ago)
- Default Branch: master
- Last Pushed: 2023-10-30T04:36:28.000Z (over 2 years ago)
- Last Synced: 2025-03-20T22:29:14.463Z (11 months ago)
- Topics: docker, docker-compose, java, jwt, liquibase, mariadb, maven, openapi, spring, spring-boot, spring-data-jpa, spring-mail, spring-security, spring-validation, sql, swagger, thymeleaf
- Language: Java
- Homepage: http://daily-helper-api.petrov-projects.ru
- Size: 276 KB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Daily Helper API

Добро пожаловать в репозиторий Daily Helper! Этот проект представляет собой REST API приложение,
разработанное для управления задачами в рамках различных проектов. Приложение позволяет создавать,
просматривать, обновлять и удалять проекты и их задачи.
## Технологии
- Java 17
- Spring Boot 3
- SQL
- Spring Data JPA
- MariaDB
- Liquibase
- Spring Security
- JWT
- Spring Mail
- Thymeleaf
- Spring Validation
- OpenAPI
- Docker Compose
## Установка и настройка
### Вручную
1. Убедитесь, что у вас установлены Java 17 и Apache Maven.
2. Клонируйте репозиторий на свою локальную машину:
```bash
git clone https://github.com/ptrvsrg/daily-helper-api.git
```
3. Настройте переменные среды базы данных:
+ DAILY_HELPER_DB_AUTHORITY - хост и порт базы данных
+ DAILY_HELPER_DB_SCHEMA_NAME - название схемы
+ DAILY_HELPER_DB_URL - URL схемы (<хост>:<порт>/<название-схемы>)
+ DAILY_HELPER_DB_USERNAME - имя пользователя схемы
+ DAILY_HELPER_DB_PASSWORD - пароль пользователя схемы
4. Настройте переменные среды почты:
+ DAILY_HELPER_MAIL_PROTOCOL - протокол SMTP сервера
+ DAILY_HELPER_MAIL_HOST - хост SMTP сервера
+ DAILY_HELPER_MAIL_PORT - порт SMTP сервера
+ DAILY_HELPER_MAIL_USERNAME - имя пользователя SMTP сервера
+ DAILY_HELPER_MAIL_PASSWORD - пароль пользователя SMTP сервера
5. Настройте переменные среды токенов:
+ DAILY_HELPER_JWT_SECRET - секретное слово для JWT токенов
6. Запустите приложение с помощью команды:
```bash
mvn spring-boot:run
```
### Docker Compose
1. Клонируйте репозиторий на свою локальную машину:
```bash
git clone https://github.com/ptrvsrg/daily-helper-api.git
```
2. Добавьте значения переменных среды в файл [sample.env](./sample.env) и переименуйте его в .env
3. Запустите контейнеры с помощью команды:
```bash
sudo docker compose up -d
```
## Документация API
Документация API предоставляется с использованием файла YAML для OpenAPI. Данный файл описывает
доступные эндпоинты, параметры запросов и ожидаемые ответы.
Открыть документацию можно с использованием:
+ [Swagger Editor](https://editor.swagger.io/)
+ [OpenAPI Specifications](https://plugins.jetbrains.com/plugin/14394-openapi-specifications)
## Вклад в проект
Если вы хотите внести свой вклад в проект, вы можете следовать этим шагам:
1. Создайте форк этого репозитория.
2. Внесите необходимые изменения.
3. Создайте pull request, описывая ваши изменения.