🔒️ feat(auth): centralize JWT validation and add deployment docs

- Migrate Chat, Picture, Presi, Zitare backends to shared auth guards
- Remove duplicate local JWT guards and decorators
- Add CD staging workflow for tagged releases
- Add comprehensive auth architecture documentation
- Add Hetzner deployment and Docker setup guides
- Add environment configuration audit docs
- Update env generation scripts

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
Wuesteon 2025-12-01 20:44:45 +01:00
parent 942c588e15
commit 5b0b3095ff
50 changed files with 11916 additions and 718 deletions

View file

@ -57,6 +57,7 @@ STRIPE_WEBHOOK_SECRET=whsec_YOUR_SECRET
CHAT_BACKEND_PORT=3002
CHAT_DATABASE_URL=postgresql://manacore:devpassword@localhost:5432/chat
DEV_BYPASS_AUTH=true
DEV_USER_ID=00000000-0000-0000-0000-000000000000
# Google Gemini API (primary - fast & cost-effective)
GOOGLE_GENAI_API_KEY=AIzaSyApsYQXxN6PuXpF8-7j6MonCACwS0ZxNRc
@ -74,7 +75,7 @@ CHAT_SUPABASE_ANON_KEY=your-supabase-anon-key
# MAERCHENZAUBER PROJECT
# ============================================
MAERCHENZAUBER_BACKEND_PORT=3003
MAERCHENZAUBER_BACKEND_PORT=3013
MAERCHENZAUBER_APP_ID=8d2f5ddb-e251-4b3b-8802-84022a7ac77f
# Supabase
@ -109,7 +110,7 @@ MANACORE_SUPABASE_ANON_KEY=your-supabase-anon-key
# MANADECK PROJECT
# ============================================
MANADECK_BACKEND_PORT=3004
MANADECK_BACKEND_PORT=3009
MANADECK_DATABASE_URL=postgresql://manacore:devpassword@localhost:5432/manadeck
MANADECK_APP_ID=cea4bfc6-a4de-4e17-91e2-54275940156e
MANADECK_SUPABASE_URL=https://your-manadeck-project.supabase.co
@ -119,8 +120,8 @@ MANADECK_SUPABASE_ANON_KEY=your-supabase-anon-key
# PICTURE PROJECT
# ============================================
PICTURE_BACKEND_PORT=3003
PICTURE_BACKEND_URL=http://localhost:3003
PICTURE_BACKEND_PORT=3006
PICTURE_BACKEND_URL=http://localhost:3006
PICTURE_DATABASE_URL=postgresql://picture:picturepassword@localhost:5434/picture
# Storage Configuration (local for dev, s3 for production with Hetzner Object Storage)
@ -143,7 +144,7 @@ PICTURE_APPLE_CLIENT_ID=
# NUTRIPHI PROJECT
# ============================================
NUTRIPHI_BACKEND_PORT=3002
NUTRIPHI_BACKEND_PORT=3012
NUTRIPHI_DATABASE_URL=postgresql://nutriphi:nutriphi_dev_password@localhost:5435/nutriphi
NUTRIPHI_APP_ID=nutriphi
NUTRIPHI_GEMINI_API_KEY=your-gemini-api-key-here