# Flutter Landing Page + i18n Task ## Goal Match Go version landing page, add i18n (EN, NL, RU first) ## Visual Changes Needed ### Layout (match Go version) - [ ] Wrap sections in `.landing-card` style (white bg, border, rounded, padding 48px) - [ ] Hero: centered text, not left-aligned - [ ] Hero text: "inou organizes and shares your health dossier with your AI — securely and privately." - [ ] Hero tagline: "Your health, understood." - [ ] CTA button: "Sign in" (or "Invite a friend" if logged in) ### Content Sections (3 cards in Go) 1. **Hero card** - tagline + CTA 2. **"You need AI for your health"** - warm prose style 3. **"The challenge"** - Data/Reality pairs format: - "Your MRI has 4,000 slices." / "It was read in 10 minutes." - "Your genome has millions of variants." / "All you learned was your eye color..." - etc. 4. **"Why we built this"** - prose paragraphs 5. **Trust section** - 4-column grid: - Never used for training - Never shared - Military-grade encryption - Delete anytime ### CSS Values (from Go) ``` --bg: #F8F7F6 --bg-card: #FFFFFF --border: #E5E2DE --text: #1C1917 --text-muted: #78716C --accent: #B45309 --accent-hover: #92400E .landing-card { padding: 48px; border-radius: 8px; border: 1px solid var(--border); margin-bottom: 24px; } .trust-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 32px; } ``` ## i18n Setup ### Packages ```yaml dependencies: flutter_localizations: sdk: flutter intl: ^0.18.0 ``` ### Structure ``` lib/ ├── l10n/ │ ├── app_en.arb # English │ ├── app_nl.arb # Dutch │ └── app_ru.arb # Russian └── main.dart # Add localization delegates ``` ### Key Strings to Port (landing only) From `lang/en.yaml`: - data_yours: "Your data stays yours" - never_training: "Never used for training" - never_training_desc: "Your images are never used to train AI models." - never_shared: "Never shared" - never_shared_desc: "We never share your data with anyone." - encrypted: "Military-grade encryption" - encrypted_desc: "At rest and in transit..." - delete: "Delete anytime" - delete_desc: "Your data, your control." - get_started: "Get started" ### Language Switcher - Add to InouHeader - Dropdown with: English, Nederlands, Русский - Store preference (SharedPreferences) ## Source Files - Go templates: `~/dev/inou/templates/` - Go CSS: `~/dev/inou/static/style.css` - Go translations: `~/dev/inou/lang/*.yaml` ## Translation Strategy - Port EN strings first (manual) - Use cheap model to translate EN → NL, RU - Human review later ## Priority 1. Match visual layout first 2. Add i18n scaffolding 3. Port EN strings 4. Generate NL, RU translations