Refactor technical documentation for clarity and updates
- Updated "teknisk_beskrivning_flutter.md" to streamline content and remove outdated sections, focusing on architecture, environment, and recent technical additions. - Enhanced "migrering-MSI.md" with post-migration updates and clarifications for target audience. - Revised "produktlansering.md" to serve as a release checklist, ensuring it complements existing documentation without duplication. Co-authored-by: Copilot <copilot@github.com>
This commit is contained in:
+33
-99
@@ -1,113 +1,47 @@
|
||||
# Flutter Frontend - Användarguide
|
||||
# Flutter Frontend - Anvandarguide
|
||||
|
||||
Detta dokument beskriver hur du använder Flutter-frontenden för Recipe App ur ett användar- och operatörsperspektiv.
|
||||
Detta dokument ar for anvandare och operativa testare.
|
||||
Har beskriver vi vad som fungerar i Flutter-klienten och hur den anvands i praktiken.
|
||||
|
||||
## Senaste ändringar (2026-04-25)
|
||||
## Dokumentstatus (2026-05-03)
|
||||
|
||||
**Arkitektur- och UX-förbättringar:**
|
||||
- Grid-vy för recept: Kolumnval (2/4/6/8) via ikon i AppShell, med Riverpod-provider och SharedPreferences.
|
||||
- RecipesScreen är nu body-only, ingen egen Scaffold/AppBar.
|
||||
- AppShell visar grid-ikon endast på /recipes.
|
||||
- Buggfix: Produktväljaren i pantry/inventarie (ProductPickerField) — bottenark implementeras.
|
||||
- Kodkvalitet: Inga absoluta Windows-sökvägar.
|
||||
- Fokus: anvandarflode, inte implementation.
|
||||
- Teknisk detaljniva finns i `teknisk_beskrivning_flutter.md`.
|
||||
- Planering och backlog finns i `next_steps_flutter.md`.
|
||||
|
||||
**Nyheter och förbättringar:**
|
||||
- **Fas 5: Matplan parity** — Veckovy, portionsjustering per dag, inköpslista och inventariejämförelse mot användarens pantry är nu fullt migrerade och user-scopade.
|
||||
- **Fas 6a: Receptimport** — Importflöde för recept (fil/URL) är nu robust, med stöd för PDF, bild och ICA-länkar. Prefill av markdown och bild-url fungerar i Flutter.
|
||||
- **Bildimport** — Backend och Flutter har förbättrats med robust bildhantering, normalisering av URL:er, fallback och diagnostikloggning.
|
||||
- **User-scope för pantry och matplan** — Alla baslager- och matplansdata är nu per användare (inte globala).
|
||||
- **UI/UX-förbättringar** — Produktval med bottenark (ProductPickerField), swipe-för-±1 på inventarielistan (SwipeableInventoryTile), och förbättrad felhantering.
|
||||
## Vad appen ar
|
||||
|
||||
## Vad appen är
|
||||
Flutter-webben ar en klient for Recipe App som kors i Docker och exponeras via Caddy.
|
||||
Den anvands parallellt med Next-frontenden under migrering och verifiering.
|
||||
|
||||
Flutter-webben för Recipe App är en webbklient byggd med Flutter och körs i Docker med Caddy som proxy. Den är avsedd att ersätta den befintliga Next.js-frontenden och stödja framtida mobilklienter.
|
||||
## Senaste forbattringar
|
||||
|
||||
## Aktuella användarflöden
|
||||
- Inloggning med användarnamn och lösenord.
|
||||
- Receptlista efter inloggning.
|
||||
- Profil-sida (grundversion).
|
||||
- Utloggning från recept- och profil-sidor.
|
||||
- Kvittoimportens granskningsflode ar klart och stabiliserat.
|
||||
- Pagande kvittoimport sparas i klientens session och kan atertas efter refresh/navigation.
|
||||
- Tolkning av antal/forpackning i kvittorader ar forbattrad, inklusive format som `2st`.
|
||||
- AI-kategoriforslag och produktforslag visas separerat for tydligare val.
|
||||
|
||||
## Var man kommer åt appen
|
||||
- Testmiljö: `https://test.gynther.se`
|
||||
## Aktuella anvandarfloden
|
||||
|
||||
## Inloggningsdetaljer
|
||||
- Inloggning förväntar sig användarnamn, inte e-post.
|
||||
- Exempel på seedad admin-användare i backend: `Nadmin`.
|
||||
- Lösenordet kontrolleras av servermiljövariabeln (`ADMIN_NADMIN_PASSWORD`).
|
||||
- Inloggning med anvandarnamn och losenord.
|
||||
- Recept: lista, skapa, redigera, radera.
|
||||
- Inventarie och baslager: skapa, redigera, konsumera.
|
||||
- Matplan: veckovy, portionsjustering, inkopslista.
|
||||
- Import: receptimport och kvittoimport med granskningssteg.
|
||||
|
||||
## Kända begränsningar
|
||||
- Kvittoimport (Fas 6b) är påbörjad men granskningssteg och bulk-spara återstår.
|
||||
- Bildimport kräver att containrar är uppdaterade med senaste kod — kontrollera att diagnostikloggar syns vid felsökning.
|
||||
- Vissa adminfunktioner och avancerad AI-integration är planerade men ej migrerade.
|
||||
## Kanda begransningar
|
||||
|
||||
## Felsökning (användarnivå)
|
||||
1. Om sidan visar gammalt beteende efter deployment: hård uppdatering eller öppna i inkognitoläge.
|
||||
2. Om inloggning misslyckas: verifiera användarnamn/lösenord (inte e-post).
|
||||
- Vissa adminfunktioner och avancerad AI-integration ar planerade men ej fullt migrerade.
|
||||
- Bildimport forutsatter att containrar ar uppdaterade med senaste kod.
|
||||
|
||||
## Felsokning (anvandarniva)
|
||||
|
||||
1. Om sidan visar gammalt beteende efter deploy: hard uppdatering eller inkognito.
|
||||
2. Om inloggning misslyckas: verifiera anvandarnamn/losenord (inte e-post).
|
||||
3. Om importfloden fastnar: rapportera webblasarkonsolens fel till utvecklingsteamet.
|
||||
|
||||
## Relaterade dokument
|
||||
- [next_steps_flutter.md](next_steps_flutter.md)
|
||||
- [teknisk_beskrivning_flutter.md](teknisk_beskrivning_flutter.md)
|
||||
|
||||
## Vad appen är
|
||||
|
||||
Detta är en Flutter Web frontend för Recipe App, som körs i Docker och exponeras via Caddy. Den är avsedd att bete sig som den befintliga webbfrontenden, men är byggd i Flutter för att stödja framtida Android- och iOS-klienter.
|
||||
|
||||
## Aktuella användarflöden
|
||||
- Inloggning med användarnamn och lösenord.
|
||||
- Receptlista efter inloggning.
|
||||
- Profil-sida (grundversion).
|
||||
- Utloggning från recept- och profil-sidor.
|
||||
|
||||
## Var man kommer åt appen
|
||||
- Testmiljö: `https://test.gynther.se`
|
||||
|
||||
## Inloggningsdetaljer
|
||||
- Inloggning förväntar sig användarnamn, inte e-post.
|
||||
- Exempel på seedad admin-användare i backend: `Nadmin`.
|
||||
- Lösenordet kontrolleras av servermiljövariabeln (`ADMIN_NADMIN_PASSWORD`).
|
||||
|
||||
## Kända begränsningar
|
||||
- Kvittoimport (Fas 6b) är påbörjad men granskningssteg och bulk-spara återstår.
|
||||
- Bildimport kräver att containrar är uppdaterade med senaste kod — kontrollera att diagnostikloggar syns vid felsökning.
|
||||
- Vissa adminfunktioner och avancerad AI-integration är planerade men ej migrerade.
|
||||
|
||||
## Felsökning (användarnivå)
|
||||
1. Om sidan visar gammalt beteende efter deployment: hård uppdatering eller öppna i inkognitoläge.
|
||||
2. Om inloggning misslyckas: verifiera användarnamn/lösenord (inte e-post).
|
||||
3. Om recept inte laddas: rapportera fel i webbläsarkonsolen/nätverksfelen till utvecklingsteamet.
|
||||
|
||||
## Förväntningar vid release
|
||||
|
||||
Denna frontend är tillgänglig för iterativ testning. Funktionell parity med den nuvarande produktionsfrontenden levereras stegvis.
|
||||
|
||||
## Konverteringsvägen och Onboarding
|
||||
- **CTA (Call-to-Action):** Tydliga och lockande CTAs som "Se vad du kan laga med det du har hemma."
|
||||
- **Förenkla onboarding:** Gästinloggning eller demo-läge, sociala inloggningar, välkomstguide, och pop-up-tips.
|
||||
- **Snabb start med exempeldata:** Förifyllt exempeldata och "Snabbstart"-knapp.
|
||||
- **Fokusera på "Aha!"-momentet:** Omedelbara receptförslag och automatiska inköpslistor.
|
||||
- **Tydliga instruktioner och feedback:** Instruktioner för varje steg och omedelbar feedback.
|
||||
- **Användarvänlig design:** Fokus på kärnfunktioner och enkelhet.
|
||||
- **Möjlighet att hoppa över onboarding:** Knapp för att hoppa över onboarding.
|
||||
|
||||
## Testa och iterera
|
||||
- Gå igenom appen som en ny användare för att identifiera eventuella problem.
|
||||
- A/B-testa olika CTAs och onboarding-flöden.
|
||||
- Implementera analytik för att spåra var användare hoppar av och varför.
|
||||
|
||||
## Anpassa till målgruppen
|
||||
- Anpassa marknadsföring och CTAs till målgruppen (t.ex. familjer, matintresserade, meal preppers).
|
||||
- Var tydlig med appens värdeproposition, t.ex. "Slipp slösa mat – vi visar vad du kan laga med det du har hemma."
|
||||
|
||||
---
|
||||
|
||||
## Nyheter och förbättringar (2026-04-24)
|
||||
|
||||
- **Navigations- och UX-förbättringar:**
|
||||
- Tydliga navigationslänkar mellan recept, inventarie, baslager och matplan för att förenkla användarflödet.
|
||||
- Efter att ett recept redigerats, navigeras användaren nu automatiskt till receptdetaljer.
|
||||
- Efter konsumtion av inventariepost navigeras användaren automatiskt tillbaka till inventarielistan.
|
||||
- Efter import av recept navigeras användaren automatiskt till receptlistan.
|
||||
- Mjukare scrollning i receptdetaljvyn och förbättrad bakgrundsbildshantering.
|
||||
- **Kodkvalitet:**
|
||||
- Säkerställt att inga absoluta Windows-sökvägar används i koden, för att stödja bygg och drift på Linux/Ubuntu.
|
||||
- `next_steps_flutter.md` - roadmap och prioriteringar.
|
||||
- `teknisk_beskrivning_flutter.md` - teknisk referens for drift/utveckling.
|
||||
- `../README.md` - overgripande produktinformation.
|
||||
|
||||
Reference in New Issue
Block a user