Backend на Go (Fiber + PostgreSQL + Redis + MinIO)
Go to file
ga 0f9e0ce596 Sprint 7: race conditions + read_at + slog
1. chat.EnsureChat: ON CONFLICT DO UPDATE (race-safe)
2. chat.Send: tx.Begin/Commit (atomic INSERT message + UPDATE last_msg_at)
3. chat.MarkRead: добавил member-check (NOT a member -> 403)
4. chat.Message: +ReadAt field
5. migrations/0006: read_at column on messages
6. locations.Nearby: bounding-box prefilter + CTE (haversine только для отфильтрованных)
7. audit.Log: real metadata JSON passthrough (no more 'null' TODO)
8. main.go: slog JSON logger (был stdlib log)
9. WS: 'message_read' event от MarkRead
10. WS push: добавлены read/read_at/edited в message payload
11. Bumped v0.6.0
2026-08-20 21:04:56 +00:00
cmd/server Sprint 7: race conditions + read_at + slog 2026-08-20 21:04:56 +00:00
internal Sprint 7: race conditions + read_at + slog 2026-08-20 21:04:56 +00:00
migrations Sprint 7: race conditions + read_at + slog 2026-08-20 21:04:56 +00:00
tests Sprint 6: security hardening 2026-08-20 20:42:22 +00:00
.env.example Sprint 1: scaffold backend (Go + Fiber + PG + Redis + MinIO) 2026-08-20 15:41:05 +00:00
.gitignore Sprint 1: scaffold backend (Go + Fiber + PG + Redis + MinIO) 2026-08-20 15:41:05 +00:00
docker-compose.yml Sprint 1: scaffold backend (Go + Fiber + PG + Redis + MinIO) 2026-08-20 15:41:05 +00:00
Dockerfile Sprint 5: reviews and ratings 2026-08-20 16:20:15 +00:00
go.mod Sprint 6: security hardening 2026-08-20 20:42:22 +00:00
README.md Sprint 1: scaffold backend (Go + Fiber + PG + Redis + MinIO) 2026-08-20 15:41:05 +00:00

BuhApp Backend

Backend на Go (Fiber) для приложения BuhApp.

Стек

  • Go 1.22+
  • Fiber v2 (HTTP framework)
  • PostgreSQL 16 (pgx/v5)
  • Redis 7 (go-redis)
  • MinIO (S3-compatible storage)
  • JWT (golang-jwt)
  • bcrypt (golang.org/x/crypto)

Структура

buhapp-backend/
├── cmd/server/main.go        — точка входа
├── internal/
│   ├── config/               — конфигурация (.env)
│   ├── db/                   — PostgreSQL, миграции
│   ├── redis/                — Redis клиент
│   ├── storage/              — MinIO клиент
│   ├── auth/                 — JWT, регистрация, логин
│   ├── users/                — профили
│   ├── consent/              — лог согласий (юридика)
│   ├── audit/                — audit_log
│   ├── legal/                — версии документов
│   ├── middleware/           — auth, rate limit
│   └── handlers/             — HTTP handlers
├── migrations/               — SQL миграции
├── Dockerfile
├── docker-compose.yml
├── .env.example
└── README.md

Запуск (dev)

docker compose up -d postgres redis minio
go run cmd/server/main.go

API

См. /buhapp-docs/TZ.md для полного списка.

Документация

https://git.buhapp.mygoodservice.ru/ga/buhapp-docs