Phase 1 done

This commit is contained in:
Joey Yakimowich-Payne 2026-01-13 14:14:30 -07:00
commit 9a3fc97a34
No known key found for this signature in database
GPG key ID: 6BFE655FA5ABD1E1
14 changed files with 496 additions and 33 deletions

View file

@ -31,40 +31,40 @@ Add user accounts via Authentik (OIDC) and persist quizzes to SQLite database. U
## Phase 1: Infrastructure Setup
### 1.1 Docker Compose Configuration
- [ ] Create `docker-compose.yml` with all services:
- [ ] PostgreSQL (Authentik database)
- [ ] Redis (Authentik cache)
- [ ] Authentik server
- [ ] Authentik worker
- [ ] Kaboot backend service
- [ ] Create `.env.example` with required variables:
- [ ] `PG_PASS` - PostgreSQL password
- [ ] `AUTHENTIK_SECRET_KEY` - Authentik secret
- [ ] `PG_USER`, `PG_DB` - Optional customization
- [ ] Create setup script to generate secrets (`scripts/setup.sh`)
- [ ] Add `authentik/` directory structure for volumes:
- [ ] `authentik/media/`
- [ ] `authentik/certs/`
- [ ] `authentik/custom-templates/`
- [ ] Update `.gitignore` for new files:
- [ ] `.env`
- [ ] `authentik/media/*`
- [ ] `authentik/certs/*`
- [ ] `server/data/`
- [x] Create `docker-compose.yml` with all services:
- [x] PostgreSQL (Authentik database)
- [x] Redis (Authentik cache)
- [x] Authentik server
- [x] Authentik worker
- [x] Kaboot backend service
- [x] Create `.env.example` with required variables:
- [x] `PG_PASS` - PostgreSQL password
- [x] `AUTHENTIK_SECRET_KEY` - Authentik secret
- [x] `PG_USER`, `PG_DB` - Optional customization
- [x] Create setup script to generate secrets (`scripts/setup.sh`)
- [x] Add `authentik/` directory structure for volumes:
- [x] `authentik/media/`
- [x] `authentik/certs/`
- [x] `authentik/custom-templates/`
- [x] Update `.gitignore` for new files:
- [x] `.env`
- [x] `authentik/media/*`
- [x] `authentik/certs/*`
- [x] `server/data/`
### 1.2 Authentik Configuration Documentation
- [ ] Document initial setup steps in `docs/AUTHENTIK_SETUP.md`:
- [ ] Navigate to `http://localhost:9000/if/flow/initial-setup/`
- [ ] Create admin account
- [ ] Create OAuth2/OIDC Application + Provider:
- [ ] Application name: `Kaboot`
- [ ] Application slug: `kaboot`
- [ ] Provider type: `OAuth2/OIDC`
- [ ] Client type: `Public` (SPA with PKCE)
- [ ] Client ID: `kaboot-spa`
- [ ] Redirect URIs: `http://localhost:5173/callback`, `http://localhost:5173/silent-renew.html`
- [ ] Scopes: `openid`, `profile`, `email`, `offline_access`
- [ ] Note down OIDC endpoints (issuer, JWKS URI, etc.)
- [x] Document initial setup steps in `docs/AUTHENTIK_SETUP.md`:
- [x] Navigate to `http://localhost:9000/if/flow/initial-setup/`
- [x] Create admin account
- [x] Create OAuth2/OIDC Application + Provider:
- [x] Application name: `Kaboot`
- [x] Application slug: `kaboot`
- [x] Provider type: `OAuth2/OIDC`
- [x] Client type: `Public` (SPA with PKCE)
- [x] Client ID: `kaboot-spa`
- [x] Redirect URIs: `http://localhost:5173/callback`, `http://localhost:5173/silent-renew.html`
- [x] Scopes: `openid`, `profile`, `email`, `offline_access`
- [x] Note down OIDC endpoints (issuer, JWKS URI, etc.)
---
@ -400,7 +400,7 @@ kaboot/
| Phase | Status | Notes |
|-------|--------|-------|
| Phase 1 | Not Started | |
| Phase 1 | **COMPLETE** | Docker Compose, .env, setup script, Authentik docs |
| Phase 2 | Not Started | |
| Phase 3 | Not Started | |
| Phase 4 | Not Started | |