Стек: Go, Gin, Socket.IO, PostgreSQL, Docker, Traefik (на сервере)
Серверная часть проекта для Creative Space Hackathon
Занял первое место. Сайт
Выбирай с друзьями где поесть с помощью свайпов.
Люди в одном лобби свайпают заведения, пока не произойдет match.
dishdash-demo.mp4
Prod: https://dishdash.ru/api/v1
Скопировать .env
cp .env.example .env
Есть два варианта запуска:
Подойдёт, если не планируете активно изменять код
make compose-up
make db-default-data
Подойдёт, если занимаетесь разработкой
make db-compose-up
make db-default-data
make run
- Рекомендуемая версия
go1.22.6
make help
выдаёт много полезной информации- При
POSTGRES_AUTOMIGRATE=True
бек поднимет миграции при подключении, если это не удастся, он упадёт с ошибкой - Документация rest по адресу http://localhost:8000/api/v1/swagger/index.html
make db-default-data
добавит в базу некий сет тегов. С пустой базой тегов работать не будет. Требуется установленныйpsql
(postgresql-client-16
). Можно и другим образом занести эти данные из migrations/data/default.sql- на
1000
порту запускается adminer (см.docker-compose.yml
). Креды для доступа (в ui adminer) при параметрах из .env.example:Engine=PostgreSQL Host=database, User=root Password=root Database=root
- Инструменты для разработки (golangci-lint, swag, migrate) автоматически устанавливаются в
bin/
папку в корне проекта. Нужен установленный go.