Shuffle/app
cschlaefke 7eaed46dc2
All checks were successful
CI / flutter (pull_request) Successful in 1m38s
CI / web-build (pull_request) Successful in 1m38s
CI / supabase (pull_request) Successful in 13s
CI / supabase-tests (pull_request) Successful in 35s
CI / e2e (pull_request) Successful in 2m58s
test(auth): address review findings on sign-in prompt (PR A)
Correct the focus comment (refs #61), test Space key and focus state,
prove scrollability at 200 percent text, drop needless minWidth, English
doc comment, allow OutlinedButton as secondary action in standalone cards,
English prompt text says plays instead of games.

Refs #49

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-11-04 01:25:22 +01:00
..
android fix(app): address review findings for foundation 2026-11-02 20:36:58 +01:00
assets/security fix(auth): address review findings for registration 2026-11-03 00:47:42 +01:00
env feat(app): add Flutter scaffold with config, logging, routing and l10n 2026-11-02 20:17:24 +01:00
ios fix(app): address review findings for foundation 2026-11-02 20:36:58 +01:00
lib test(auth): address review findings on sign-in prompt (PR A) 2026-11-04 01:25:22 +01:00
test test(auth): address review findings on sign-in prompt (PR A) 2026-11-04 01:25:22 +01:00
web fix(app): address review findings for foundation 2026-11-02 20:36:58 +01:00
.gitignore feat(app): add Flutter scaffold with config, logging, routing and l10n 2026-11-02 20:17:24 +01:00
.metadata feat(app): add Flutter scaffold with config, logging, routing and l10n 2026-11-02 20:17:24 +01:00
analysis_options.yaml feat(app): add Flutter scaffold with config, logging, routing and l10n 2026-11-02 20:17:24 +01:00
l10n.yaml feat(app): add Flutter scaffold with config, logging, routing and l10n 2026-11-02 20:17:24 +01:00
pubspec.lock fix(auth): address review findings for registration 2026-11-03 00:47:42 +01:00
pubspec.yaml fix(auth): address review findings for registration 2026-11-03 00:47:42 +01:00
README.md fix(app): address review findings for foundation 2026-11-02 20:36:58 +01:00
THIRD_PARTY.md feat(auth): add auth domain, repository, validators and router redirects 2026-11-03 00:09:47 +01:00

Shuffle – Flutter-App

Brettspiel-App für iOS, Android und Web (eine Codebasis). Architektur und Konventionen: ../CLAUDE.md, ../docs/adr/.

Struktur

lib/
  core/        config, logging, error, result, supabase, routing, l10n, theme
  features/    <feature>/{data,domain,presentation}
  l10n/        app_de.arb, app_en.arb (+ generierte AppLocalizations)
test/          Spiegel von lib/
env/           *.example.json (echte Umgebungsdateien sind git-ignoriert)

Starten

cd app
flutter pub get
cp env/dev.example.json env/dev.json     # Werte anpassen
dart run build_runner build --delete-conflicting-outputs
flutter run -d chrome --dart-define-from-file=env/dev.json

Pflichtwerte: SUPABASE_URL, SUPABASE_ANON_KEY (der Start bricht ohne sie ab). Optional mit Platzhalter: SITE_URL (Default http://localhost:3000; für Staging/Prod zwingend setzen, sonst zeigen Mail-Links auf localhost), LEGAL_PRIVACY_URL, LEGAL_TERMS_URL, TERMS_VERSION, APP_ENV.

Platzhalter-Identität (vor dem Store-Release festlegen)

Was Wo ändern
Bundle-/Application-ID work.cshomelabs.shuffle android/app/build.gradle.kts (namespace, applicationId), Kotlin-Package unter android/app/src/main/kotlin/, ios/Runner.xcodeproj/project.pbxproj (PRODUCT_BUNDLE_IDENTIFIER)
App-Name „Shuffle“ android/app/src/main/AndroidManifest.xml, ios/Runner/Info.plist, web/index.html, web/manifest.json, l10n-Schlüssel appTitle
Web-Domain, Rechtstexte, Version der Rechtstexte env/*.json (SITE_URL, LEGAL_*, TERMS_VERSION)

Die Bundle-ID lässt sich nach der ersten Store-Veröffentlichung nicht mehr ändern.

Hinweise

  • Generierte Dateien (*.g.dart, lib/l10n/app_localizations*.dart) werden mit eingecheckt; nach Änderungen an @riverpod-Code oder ARB-Dateien neu erzeugen (build_runner, flutter gen-l10n).
  • Web-URLs ohne # (usePathUrlStrategy): der Webserver braucht eine SPA-Rewrite-Regel (alle Pfade auf index.html).