Actually installed the Flutter SDK, built the app (web + a local screenshot
harness through a real backend), and looked at the rendered screens instead
of judging the design from source alone. The previous gradient/glassmorphism
pass read as flat and generic: glass cards barely contrasted against the
pale background, the brand mark was a stock sparkle icon, and buttons were
flat solid fills.
Changes:
- Stronger, more saturated aurora gradient + blurred glow orbs in
GradientBackdrop for real depth instead of a flat 3-stop pastel.
- Glass cards/inputs get higher-contrast fill/border and a brand-tinted
shadow so they visibly lift off the backdrop.
- New BrandMark (gradient monogram), GradientText (gradient-filled
wordmark), and PrimaryGradientButton (gradient CTA with shadow) replace
the generic Material icon/flat button on splash, signup, onboarding and
the conversation list empty state.
- Fixed a real pre-existing layout bug found via screenshot: the onboarding
header badge was a direct ListView child with an explicit width, which
Flutter's sliver list silently stretches to full width regardless of the
Container's own width — invisible before because its old flat pale fill
blended into the background. Wrapped it in Align to restore its intended
size.
Verified with flutter analyze (0 errors) and flutter test (all passing),
plus manual screenshots of signup, onboarding, conversation list and a live
chat exchanged between two demo users through a real core-backend instance.
# 터미널 1 — AI 서비스cd ai-service && pip install -r requirements.txt
exportGEMINI_API_KEY=... # or repo-root .env
uvicorn app.main:app --port 8001# 터미널 2 — 코어 백엔드cd core-backend
exportADMIN_API_TOKEN=dev-admin-token
go run . migrate && go run .
# 초대 코드 발급 예:# curl -X POST http://localhost:8080/invites -H "Authorization: Bearer $ADMIN_API_TOKEN"# 터미널 3 — Flutter (Android)cd mobile && flutter run --dart-define=CORE_API_BASE=http://10.0.2.2:8080