Decide-O-Mat — Build System & Firebase Components

v1.6 · From local dev to production via GitHub Actions

LOCAL DEVELOPMENT Vite Dev Server Hot Module Replacement React 19 · Port 5173 Firebase Emulators Auth Emulator :9099 Firestore Emulator :8080 Functions Emulator :5001 Emulator UI :4000 ESLint · Vitest · Playwright firebase.json · .env.local git push Pull Request GITHUB Repository CI-Till-Krempel/Decide-O-Mat main branch · feature branches version tags (v1.x.x) Actions Triggers push → main → deploy Staging push version tag → deploy Production Dependabot · PR checks triggers GITHUB ACTIONS (CI / CD) Lint & Test ESLint (frontend/ + functions/) Vitest unit · Playwright E2E Deploy → Staging vite build + firebase deploy Trigger: push to main Deploy → Production Trigger: version tag (v*.*.*) push to main → Staging version tag → Prod STAGING ENVIRONMENT decide-o-mat-staging · europe-west4 App Hosting (CDN) decide-o-mat-staging--decide-o-mat-staging.europe-west4.hosted.app Firebase Auth Staging project Google OAuth Email / Password Magic Links Isolated from Prod Firestore Staging DB decisions/ arguments/ Real-time Functions Node 20 deleteUser Validation Rate limit PRODUCTION ENVIRONMENT decide-o-mat-prod · europe-west4 App Hosting (CDN) decide-o-mat-prod--decide-o-mat.europe-west4.hosted.app Firebase Auth Production project Google OAuth Email / Password Magic Links Live user accounts Firestore Production DB decisions/ arguments/ Encrypted Real-time Functions Node 20 deleteUser Validation Rate limit Admin SDK