mirror of
https://github.com/Dvorinka/SEEN.git
synced 2026-06-04 04:23:01 +00:00
1.7 KiB
1.7 KiB
Seen Backend (Phase 2 Skeleton)
This is a runnable Go backend skeleton for /seen/ with:
- Gin HTTP API with versioned routes (
/api/v1) - PostgreSQL connectivity (pgx pool)
- Dragonfly/Redis connectivity
- Auth service scaffolding (register/login/refresh)
- Baseline workers/downloader/scanner interfaces
- Unified movie/show/game catalog model
- Metadata provider configuration for TMDB and IGDB
- Optional live IGDB game-search augmentation when credentials are present
- Migrations and sqlc query layout placeholders
Run locally
cp .env.example .env
go mod tidy
go run ./cmd/api
Populate these external metadata credentials in .env to enable provider-backed metadata lookups:
SEEN_TMDB_API_KEYSEEN_IGDB_CLIENT_IDSEEN_IGDB_CLIENT_SECRET
IGDB should be accessed server-side only through the backend.
Health endpoints
GET /api/v1/health/liveGET /api/v1/health/ready
Auth endpoints (skeleton)
POST /api/v1/auth/registerPOST /api/v1/auth/loginPOST /api/v1/auth/refresh
Placeholder endpoints
GET /api/v1/moviesGET /api/v1/showsGET /api/v1/watchlistGET /api/v1/downloadsGET /api/v1/libraryGET /api/v1/recommendations
Live catalog slice endpoints
GET /api/v1/dashboardGET /api/v1/progress/continue-watchingGET /api/v1/discoverGET /api/v1/gamesGET /api/v1/searchGET /api/v1/watch-laterPOST /api/v1/watch-laterDELETE /api/v1/watch-later/:mediaIdPOST /api/v1/progress
Migrations
SQL files are in migrations/ and currently include:
- auth/session baseline schema
- catalog schema + seeded discover dataset
- user watch later persistence table
- user progress persistence table