DEVSOC'26 Backend
The official Backend API for DEVSOC'26 Hackathon Portal by CodeChef-VIT. A robust, scalable RESTful API powering team formation, idea submissions, scoring, admin panels, and more.
- Authentication: Google OAuth, JWT tokens, refresh tokens, logout
- Teams: Create/join/leave teams, leader controls, join requests, bans
- Ideas: Submit/update project ideas with tracks
- Scoring: Round-wise scores, leaderboards, admin score management
- Comments: Panelist feedback on teams per round/panel
- Users: Complete profiles, submissions
- Admin Dashboard: User/team management, CSV exports, panels, logs search (Elasticsearch), bans
- Rate Limiting: Redis-based request management
- Monitoring: Health checks, request logging
Full API spec at /docs (Swagger UI in non-prod).
| Category | Technologies |
|---|---|
| Language | Go 1.24.1 |
| Framework | Echo v4 |
| Database | PostgreSQL + SQLC + pgx/v5 |
| Cache | Redis v9 |
| Search | Elasticsearch v9 |
| Auth | JWT (jwx/v2), Google OAuth |
| Validation | go-playground/validator |
| ORM/Query | Custom SQLC-generated |
| Container | Docker, docker-compose |
| Other | Scalar API docs, UUID, godotenv |
- Go 1.24+
- Docker & docker-compose
- PostgreSQL, Redis (via Docker)
- Google OAuth Client ID/Secret
git clone https://github.com/CodeChefVIT/devsoc-backend-26.git
cd devsoc-backend-26
cp .env.example .envCopy .env.example to .env and configure:
See docs/ENV.md for staging/production details.
# Development with hot reload
docker-compose -f docker-compose.dev.yml up --build
# Production
docker-compose up --buildMigrates DB schema, starts API on :8080.
# Install deps
go mod tidy
# DB migrations (manual)
# Run schema/*.sql in order, then generate queries:
make generate
# Run
make run
# or
go run cmd/api/main.go|
Atharva Sharma |
BrainNotFoundException |
Soham Mahapatra |
Upayan Mazumder |
|
Abhinav Pant |
Yogesh |
Rewansh Choudhary |
Advik Gupta |
|
Somasekar |
Yatharth |
Naman Goyal |
Dragon Rage |
MIT License © 2026 CodeChef-VIT
Made with ❤️ for DEVSOC'26 by CodeChef-VIT











