Flutter client — implementation log
Living document for the Android-first Flutter app. Staging API: https://api-staging.thegood-app.com/api
Stack
- Flutter (stable), Material 3,
provider, http, shared_preferences
- i18n: English + Spanish from the first release; language can be changed anytime in Settings (same gear icon in the app bar, profile card, and edit profile).
- Brand SVGs loaded from
/brand/img/ on the API host (staging).
API alignment (profile)
The app uses the same contract as PATCH /api/v1/users/:id/profile (UpdateProfileDto):
- Editable in-app:
firstName, lastName, address
- Not in UI yet:
avatar — custom profile photos wait until the media/image flow is defined. Initials avatar only.
- Other DTO fields (
lastConnectionAt, lastNewsDownloadedId, etc.) are for future features.
Screens shipped (this milestone)
- Onboarding / welcome (3 slides)
- Email + password login
- Registration with confirm password
- Home (session + profile summary)
- Edit profile (name fields + address)
- Settings (language: EN / ES)
Screenshots
Current captures from good-app/flutter/images/ (served at /flutter/images/).
Troubleshooting captures
Back to frontend plan