REST API для управления подписками на сервисы
- Go 1.24.2+
- PostgreSQL 18+
- Клонировать репозиторий:
git clone github.com/username/project.git
cd progect- Настройка окружения Рекомендуется ввести свои переменные окружения для корректной работы приложения.
cp .env.example .env- Запуск
go run cmd/main.godocker compose up --buildhttp://localhost:7880/
- GET /subscribes - получение подписок
- GET /subscribes/all - получение общей стоимости подписок за период
- POST /create - создание подписки
- Delete /delete - удаление подписки
- Put /update - обновление подписки
Документация доступна по адресу: http://localhost:7880/swagger/index.html
/cmd
main.go # Точка входа
/internal
/database # Подключение к БД
/handlers # HTTP обработчики
/models # Структуры данных
/usecase # Бизнес-логика
/storage # Работа с БД
/migrations # Файлы миграций
Впишите свои параметры
CONFIG_FILE="configdata/configurate.yaml"
DATABASE_PASSWORD=password
DATABASE_USER=user
DATABASE_HOST=localhost
DATABASE_PORT=5050
DATABASE_NAME=dbname
API_PORT=7880
API_HOST=localhostcurl -X POST http://localhost:8080/api/v1/subscriptions \
-H "Content-Type: application/json" \
-d '{
"user_id": "uuid",
"service_name": "Netflix",
"price": 500,
"start_date" "11-2025"
}'Миграции выполняются автоматически при запуске сервера.