https://github.com/ra1nz0r/music_online_library
Реализация онлайн библиотеки песен 🎶
https://github.com/ra1nz0r/music_online_library
env golang migration rest-api server swagger
Last synced: 3 months ago
JSON representation
Реализация онлайн библиотеки песен 🎶
- Host: GitHub
- URL: https://github.com/ra1nz0r/music_online_library
- Owner: Ra1nz0r
- Created: 2024-09-24T17:08:25.000Z (8 months ago)
- Default Branch: main
- Last Pushed: 2024-10-20T19:21:27.000Z (7 months ago)
- Last Synced: 2025-01-01T21:14:19.857Z (5 months ago)
- Topics: env, golang, migration, rest-api, server, swagger
- Language: Go
- Homepage:
- Size: 160 KB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
ТЗ: Реализация онлайн библиотеки песен 🎶
**Представляет собой онлайн библиотеку песен, где пользователи могут просматривать тексты песен различных исполнителей.**
- **В проекте реализованы REST методы**:
- [x] Добавление песни[^1].
- [x] Получение данных библиотеки с фильтрацией по всем полям и пагинацией.
- [x] Получение текста песни с пагинацией по куплетам[^2].
- [x] Удаление песни.
- [x] Изменение параметров песни.**Реализована Swagger документация и доступна по эндпойнту `/swagger/index.html#/`, после запуска сервера.**
[Инструкция по локальному запуску и информация по приложению.](#local)
---
#### Инструкция по локальному запуску и информация по приложению.
_Для изменения стандартных параметров, нужно изменить значения в `.env` файле корня проекта._
По-умолчанию приложение запускается на `localhost:7654`
- Программу можно запускать двумя способами через терминал. - Обычные команды. - Короткими командами из TaskFile.
- **_Для запуска приложения в терминале._**\
`go run ./cmd/app` или `task run`- **_Для запуска тестов в терминале._**\
`go test -v ./... -count=1` или `task test`---
[^1]: При добавлении песни, происходит подключение ко внешнему API для получения дополнительных данных. Если запрос завершается неудачей, то песня будет добавлена без дополнительных параметров.
[^2]: Текст разбивается на куплеты по символу '\n\n', в самих же куплетах символ '\n' заменяется переносом на новую строчку.