Backend-часть проекта Quizverse3D — собственной реализации многопользовательской 3D-викторины с поддержкой реального времени, нейросетевых технологий и мультиплатформенного клиентского взаимодействия.
make protoc
make run-allbackend/
├── cmd/ # Точки входа сервисов
│ ├── authgateway/ # API Gateway (REST -> gRPC), аутентификация, валидация, обогащение
│ └── user/ # Сервис пользователей
├── internal/ # Бизнес-логика сервисов
│ ├── authgateway/ # Аутентификация и валидация JWT, мост с REST клиента на gRPC сервисов
│ ├── user/ # Работа с пользователями, профили
│ └── common/ # Общие модули (PostgreSQL, Redis Pools)
├── pkg/ # Переиспользуемые пакеты (логгеры, middlewares)
│ └── logger/ # Логирование
├── proto/ # Контракты gRPC (protobuf исходные файлы для общения между сервисами)
│ ├── user.proto
├── python/ # Python-сервисы (нейронки, ML, генерация паков вопросов)
│ └── ai_service/
├── deployments/ # Kubernetes манифесты
├── helm/ # Собственные helm-чарты и values для готовых
├── scripts/ # Миграции, тестовые данные, вспомогательные скрипты
├── swagger/ # helm-чарт swagger с описанием модели в common.yaml
├── docker-compose.yml # Локальная сборка
├── Makefile # Упрощённый запуск и сборка
├── go.mod / go.sum # Go-модули
└── README.md # Ты здесь :)- Go (Golang) — ядро backend логики
- Python — AI-сервисы, генерация контента, нейросети
- gRPC / Protobuf — коммуникация между микросервисами
- PostgreSQL — индивидуальная БД сервиса
- Redis - общая БД
- Docker / Docker Compose — сборка и деплой
- Kubernetes — масштабирование
- RabbitMQ - шина сообщений