Этот репозиторий содержит бэкенд для веб-приложения SOS-Котопес. Бэкенд построен с использованием Go и предоставляет RESTful API для взаимодействия с системой
Следующие задачи ожидают выполнения для завершения разработки бэкенда:
-
Логгер
-
Заменить стандартный логгер Fiber на пользовательскую реализацию.
-
CI (Непрерывная интеграция)
-
Настроить CI pipeline для автоматизации тестирования, сборки и развертывания.
-
Docker Compose
-
Файл
docker-compose.yml
для оркестрации приложения и его зависимостей с использованием Docker. -
Лицензия
-
Файл LICENSE для указания условий лицензирования проекта.
-
README
-
Написать подробный файл README.
-
Автоматические миграции базы данных
-
Реализовать автоматические миграции базы данных.
-
Документация Swagger
-
Выбрать библиотеку для автоматической генерации Swagger API, добавить аннотации для обработчиков.
- Go 1.22.5+
- PostgreSQL
- Docker (опционально, для развертывания в контейнерах)
-
Клонируйте репозиторий:
git clone https://github.com/kotopesp/sos-kotopes.git cd sos-kotopes/backend
-
Установите зависимости:
go mod tidy
Для запуска приложения выполните команду:
make run
примечание: Для выполнения команды PG_URL
в Makefile должен быть обновлен.
Заполните docker-compose.yml
файл (пока не поддерживается) и выполните команду:
docker-compose up --build
Для того, чтобы вручную запустить миграцию базы данных выполните команду:
make migrate-up
примечание: Для выполнения команды PG_URL
в Makefile должен быть обновлен.
При добавлении новых зависимостей в проект:
- Добавьте вашу зависимость в файл
go.mod
используя командуgo get
или напрямую редактируяgo.mod
. - Выполните команду
go mod vendor
.
Для поддержки качества кода, придерживайтесь данных практик:
- Выполняйте команду
make lint
перед коммитами или отправкой Pull Request'ов чтобы убедиться в том, что ваш код соответствует стандартам линтера.