feat: update README and technical documentation with user guidance, architectural details, and ongoing work plans
This commit is contained in:
+29
-2
@@ -1,6 +1,6 @@
|
||||
# Flutter Frontend - User Guide
|
||||
# Flutter Frontend - Användarguide
|
||||
|
||||
This README describes how to use the Flutter frontend for Recipe App from a user and operator perspective.
|
||||
Detta dokument beskriver hur du använder Flutter-frontenden för Recipe App ur ett användar- och operatörsperspektiv.
|
||||
|
||||
## Senaste ändringar (2026-04-25)
|
||||
|
||||
@@ -18,6 +18,33 @@ This README describes how to use the Flutter frontend for Recipe App from a user
|
||||
- **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 är
|
||||
|
||||
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.
|
||||
|
||||
## 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).
|
||||
|
||||
## Relaterade dokument
|
||||
- [next_steps_flutter.md](next_steps_flutter.md)
|
||||
- [teknisk_beskrivning_flutter.md](teknisk_beskrivning_flutter.md)
|
||||
|
||||
@@ -9,12 +9,11 @@
|
||||
- Sprint 2: Användare-fliken stödjer nu Premium av/på direkt från användarmenyn.
|
||||
- Kodkvalitet: Inga absoluta Windows-sökvägar.
|
||||
- Dokumentation och next_steps uppdaterade.
|
||||
# Next Steps: Flutter-migrering
|
||||
# Nästa steg: Flutter-migrering
|
||||
|
||||
Relaterade dokument:
|
||||
- [flutter/README.md](flutter/README.md)
|
||||
- [README.md](README.md)
|
||||
- [teknisk_beskrivning_flutter.md](teknisk_beskrivning_flutter.md)
|
||||
- [TEKNISK_BESKRIVNING.md](TEKNISK_BESKRIVNING.md)
|
||||
|
||||
## Mål och prioriteringar för produktion
|
||||
|
||||
@@ -30,6 +29,20 @@ Relaterade dokument:
|
||||
3. Migreringen sker i Flutter-spåret som separat klient mot befintliga API-kontrakt.
|
||||
4. Next-frontend körs parallellt tills Flutter har verifierad parity i kärnflöden.
|
||||
|
||||
## Arbetsplan
|
||||
|
||||
### Pågående arbete
|
||||
- **Kvittoimport (Fas 6b):** Påbörjad men granskningssteg och bulk-spara återstår.
|
||||
- **Bildimport:** Säkerställa att containrar är uppdaterade med senaste kod och att diagnostikloggar syns vid felsökning.
|
||||
- **Adminfunktioner:** Avancerad AI-integration och ytterligare adminfunktioner planeras men är ej migrerade.
|
||||
|
||||
### Prioriterade nästa steg
|
||||
1. Slutför kvittoimport och bulk-spara.
|
||||
2. Säkerställa robust bildimport och diagnostik.
|
||||
3. Implementera avancerad AI-integration för produktkategorisering.
|
||||
4. Utöka adminfunktioner för användarhantering och produktadministration.
|
||||
5. Förbättra UI/UX för användarflöden, inklusive onboarding och profilhantering.
|
||||
|
||||
## Beslut 2026-04-22 - User-scope för pantry och matplan
|
||||
|
||||
- Pantry och matplan ska vara per användare, inte globala.
|
||||
|
||||
@@ -21,6 +21,39 @@ Viktigt att komma ihåg vid implementering av nya funktioner och kodning är att
|
||||
- Web först, men med arkitektur som kan återanvändas för Android/iOS.
|
||||
- Stegvis migrering av funktioner från befintlig Next.js-frontend.
|
||||
|
||||
## Arkitektur
|
||||
|
||||
### Lager
|
||||
- **Presentation:** Skärmar och widgets i `flutter/lib/features/*/presentation`.
|
||||
- **State/Application:** Riverpod providers/notifiers i `flutter/lib/features/*/data`.
|
||||
- **Data/API:** `ApiClient` i `flutter/lib/core/api`.
|
||||
- **Platform abstraction:** Token storage interface i `flutter/lib/core/platform`.
|
||||
|
||||
### Routing
|
||||
- GoRouter i [flutter/lib/core/router/app_router.dart](flutter/lib/core/router/app_router.dart).
|
||||
- Nuvarande routes:
|
||||
- `/login` — loginskärm
|
||||
- `/recipes` — receptlista (ShellRoute med AppShell)
|
||||
- `/recipes/create` — nytt recept, utanför ShellRoute
|
||||
- `/recipes/:id` — receptdetalj, utanför ShellRoute
|
||||
- `/recipes/:id/edit` — redigera recept, utanför ShellRoute
|
||||
- `/profile` — profil (ShellRoute med AppShell)
|
||||
- `/recipes/create` måste vara listad före `/recipes/:id` i routelistan för att undvika konflikt.
|
||||
- Detaljsidor (detalj, skapa, redigera) ligger utanför ShellRoute för att få full-screen med automatisk back-knapp.
|
||||
|
||||
### Auth
|
||||
- Login endpoint: `POST /api/auth/login`.
|
||||
|
||||
## Övrigt
|
||||
- **Kvittoimport (Fas 6b):** Påbörjad men granskningssteg och bulk-spara återstår.
|
||||
- **Bildimport:** Säkerställa att containrar är uppdaterade med senaste kod och att diagnostikloggar syns vid felsökning.
|
||||
- **Adminfunktioner:** Avancerad AI-integration och ytterligare adminfunktioner planeras men är ej migrerade.
|
||||
|
||||
## Syfte och mål
|
||||
- Isolerad Flutter-baserad frontend i separat Docker-service.
|
||||
- Web först, men med arkitektur som kan återanvändas för Android/iOS.
|
||||
- Stegvis migrering av funktioner från befintlig Next.js-frontend.
|
||||
|
||||
## Relaterade dokument
|
||||
- [next_steps_flutter.md](next_steps_flutter.md)
|
||||
- [README.md](README.md)
|
||||
|
||||
Reference in New Issue
Block a user