# maheenawan-dev/bloome-flower-bouquet-app architecture

> Architecture diagram of the GitHub repository maheenawan-dev/bloome-flower-bouquet-app, generated by GitDiagram from its file tree, README and a sample of source files (last updated 2026-09-26). It is an AI-made overview: check details against the source.

- Interactive diagram: https://gitdiagram.com/maheenawan-dev/bloome-flower-bouquet-app
- Repository: https://github.com/maheenawan-dev/bloome-flower-bouquet-app

## Overview

Bloomé is a Flutter bouquet-shopping app. The principal user journey is to browse and search bouquets, inspect or customize one, manage favorites and cart contents, complete checkout, then review placed orders. Separate screens cover account access, notifications, profile and settings, and informational content; managers represent app state for cart, favorites, orders, users, notifications, language, and theme. The README documents these capabilities, but the sampled source contains only platform runners, so screen-to-manager wiring and finer navigation details cannot be verified.

Main entry points: [`lib/menu_drawer.dart`](https://github.com/maheenawan-dev/bloome-flower-bouquet-app/blob/main/lib/menu_drawer.dart) (Navigation Menu), [`lib/detail_screen.dart`](https://github.com/maheenawan-dev/bloome-flower-bouquet-app/blob/main/lib/detail_screen.dart) (Bouquet Details), [`lib/home_screen.dart`](https://github.com/maheenawan-dev/bloome-flower-bouquet-app/blob/main/lib/home_screen.dart) (Browse & Search), [`lib/cart_screen.dart`](https://github.com/maheenawan-dev/bloome-flower-bouquet-app/blob/main/lib/cart_screen.dart) (Cart Screen)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_shopping["Bouquet Shopping"]
  node_home["Browse &amp; Search<br/>[home_screen.dart]"]
  node_bouquet_card["Bouquet Card<br/>[bouquet_card.dart]"]
  node_detail["Bouquet Details<br/>[detail_screen.dart]"]
  node_customize["Customize Bouquet"]
  node_favorites["Favorites Screen"]
end

subgraph group_checkout["Purchase Flow"]
  node_cart["Cart Screen<br/>[cart_screen.dart]"]
  node_payment["Checkout &amp; Payment"]
  node_orders["Order History<br/>[orders_screen.dart]"]
end

subgraph group_account["Account &amp; Support"]
  node_login["Login<br/>[login_screen.dart]"]
  node_signup["Sign Up<br/>[signup_screen.dart]"]
  node_profile["Profile"]
  node_settings["Settings"]
  node_notifications["Notifications"]
  node_about["About Bloomé"]
  node_contact["Contact Us"]
end

subgraph group_state["App State"]
  node_cart_state["Cart State<br/>[cart_manager.dart]"]
  node_favorites_state["Favorites State"]
  node_orders_state["Order State<br/>[order_manager.dart]"]
  node_user_state["User State<br/>[user_manager.dart]"]
  node_notification_state["Notification State"]
  node_theme_state["Theme Preference<br/>[theme_manager.dart]"]
  node_language_state["Language Preference"]
end

subgraph group_app["App Shell"]
  node_app_root["App Entry<br/>[main.dart]"]
  node_drawer["Navigation Menu<br/>[menu_drawer.dart]"]
end

node_user(("Shopper"))

node_user -->|"opens app"| node_app_root
node_app_root -->|"presents shopping"| node_home
node_home -->|"shows bouquets"| node_bouquet_card
node_home -->|"opens bouquet"| node_detail
node_detail -->|"starts customization"| node_customize
node_detail -->|"adds item"| node_cart_state
node_customize -->|"adds custom item"| node_cart_state
node_detail -->|"updates favorites"| node_favorites_state
node_favorites -->|"reads favorites"| node_favorites_state
node_cart -->|"manages items"| node_cart_state
node_cart -->|"continues checkout"| node_payment
node_payment -->|"records order"| node_orders_state
node_orders -->|"reads orders"| node_orders_state
node_login -->|"manages account"| node_user_state
node_signup -->|"manages account"| node_user_state
node_profile -->|"reads profile"| node_user_state
node_notifications -->|"manages read status"| node_notification_state
node_settings -->|"manages theme"| node_theme_state
node_settings -->|"manages language"| node_language_state
node_drawer -->|"navigates to"| node_home
node_drawer -->|"navigates to"| node_favorites
node_drawer -->|"navigates to"| node_cart
node_drawer -->|"navigates to"| node_orders
node_drawer -->|"navigates to"| node_notifications
node_drawer -->|"navigates to"| node_profile
node_drawer -->|"navigates to"| node_settings
node_drawer -->|"navigates to"| node_about
node_drawer -->|"navigates to"| node_contact

click node_app_root "https://github.com/maheenawan-dev/bloome-flower-bouquet-app/blob/main/lib/main.dart"
click node_home "https://github.com/maheenawan-dev/bloome-flower-bouquet-app/blob/main/lib/home_screen.dart"
click node_bouquet_card "https://github.com/maheenawan-dev/bloome-flower-bouquet-app/blob/main/lib/bouquet_card.dart"
click node_detail "https://github.com/maheenawan-dev/bloome-flower-bouquet-app/blob/main/lib/detail_screen.dart"
click node_customize "https://github.com/maheenawan-dev/bloome-flower-bouquet-app/blob/main/lib/customize_bouquet_screen.dart"
click node_favorites "https://github.com/maheenawan-dev/bloome-flower-bouquet-app/blob/main/lib/favorites_screen.dart"
click node_cart "https://github.com/maheenawan-dev/bloome-flower-bouquet-app/blob/main/lib/cart_screen.dart"
click node_payment "https://github.com/maheenawan-dev/bloome-flower-bouquet-app/blob/main/lib/payment_screen.dart"
click node_orders "https://github.com/maheenawan-dev/bloome-flower-bouquet-app/blob/main/lib/orders_screen.dart"
click node_login "https://github.com/maheenawan-dev/bloome-flower-bouquet-app/blob/main/lib/login_screen.dart"
click node_signup "https://github.com/maheenawan-dev/bloome-flower-bouquet-app/blob/main/lib/signup_screen.dart"
click node_profile "https://github.com/maheenawan-dev/bloome-flower-bouquet-app/blob/main/lib/profile_screen.dart"
click node_settings "https://github.com/maheenawan-dev/bloome-flower-bouquet-app/blob/main/lib/settings_screen.dart"
click node_notifications "https://github.com/maheenawan-dev/bloome-flower-bouquet-app/blob/main/lib/notification_screen.dart"
click node_about "https://github.com/maheenawan-dev/bloome-flower-bouquet-app/blob/main/lib/about_us_screen.dart"
click node_contact "https://github.com/maheenawan-dev/bloome-flower-bouquet-app/blob/main/lib/contact_us_screen.dart"
click node_drawer "https://github.com/maheenawan-dev/bloome-flower-bouquet-app/blob/main/lib/menu_drawer.dart"
click node_cart_state "https://github.com/maheenawan-dev/bloome-flower-bouquet-app/blob/main/lib/cart_manager.dart"
click node_favorites_state "https://github.com/maheenawan-dev/bloome-flower-bouquet-app/blob/main/lib/favorites_manager.dart"
click node_orders_state "https://github.com/maheenawan-dev/bloome-flower-bouquet-app/blob/main/lib/order_manager.dart"
click node_user_state "https://github.com/maheenawan-dev/bloome-flower-bouquet-app/blob/main/lib/user_manager.dart"
click node_notification_state "https://github.com/maheenawan-dev/bloome-flower-bouquet-app/blob/main/lib/notification_manager.dart"
click node_theme_state "https://github.com/maheenawan-dev/bloome-flower-bouquet-app/blob/main/lib/theme_manager.dart"
click node_language_state "https://github.com/maheenawan-dev/bloome-flower-bouquet-app/blob/main/lib/language_manager.dart"

classDef toneNeutral fill:#f8fafc,stroke:#334155,stroke-width:1.5px,color:#0f172a
classDef toneBlue fill:#dbeafe,stroke:#2563eb,stroke-width:1.5px,color:#172554
classDef toneAmber fill:#fef3c7,stroke:#d97706,stroke-width:1.5px,color:#78350f
classDef toneMint fill:#dcfce7,stroke:#16a34a,stroke-width:1.5px,color:#14532d
classDef toneRose fill:#ffe4e6,stroke:#e11d48,stroke-width:1.5px,color:#881337
classDef toneIndigo fill:#e0e7ff,stroke:#4f46e5,stroke-width:1.5px,color:#312e81
classDef toneTeal fill:#ccfbf1,stroke:#0f766e,stroke-width:1.5px,color:#134e4a
class node_home,node_bouquet_card,node_detail,node_customize,node_favorites toneBlue
class node_cart,node_payment,node_orders toneAmber
class node_login,node_signup,node_profile,node_settings,node_notifications,node_about,node_contact toneMint
class node_cart_state,node_favorites_state,node_orders_state,node_user_state,node_notification_state,node_theme_state,node_language_state toneRose
class node_app_root,node_drawer,node_user toneIndigo
```

## Components

### Bouquet Shopping

- [Browse & Search](https://github.com/maheenawan-dev/bloome-flower-bouquet-app/blob/main/lib/home_screen.dart): `lib/home_screen.dart`
- [Bouquet Card](https://github.com/maheenawan-dev/bloome-flower-bouquet-app/blob/main/lib/bouquet_card.dart): `lib/bouquet_card.dart`
- [Bouquet Details](https://github.com/maheenawan-dev/bloome-flower-bouquet-app/blob/main/lib/detail_screen.dart): `lib/detail_screen.dart`
- [Customize Bouquet](https://github.com/maheenawan-dev/bloome-flower-bouquet-app/blob/main/lib/customize_bouquet_screen.dart): `lib/customize_bouquet_screen.dart`
- [Favorites Screen](https://github.com/maheenawan-dev/bloome-flower-bouquet-app/blob/main/lib/favorites_screen.dart): `lib/favorites_screen.dart`

### Purchase Flow

- [Cart Screen](https://github.com/maheenawan-dev/bloome-flower-bouquet-app/blob/main/lib/cart_screen.dart): `lib/cart_screen.dart`
- [Checkout & Payment](https://github.com/maheenawan-dev/bloome-flower-bouquet-app/blob/main/lib/payment_screen.dart): `lib/payment_screen.dart`
- [Order History](https://github.com/maheenawan-dev/bloome-flower-bouquet-app/blob/main/lib/orders_screen.dart): `lib/orders_screen.dart`

### Account & Support

- [Login](https://github.com/maheenawan-dev/bloome-flower-bouquet-app/blob/main/lib/login_screen.dart): `lib/login_screen.dart`
- [Sign Up](https://github.com/maheenawan-dev/bloome-flower-bouquet-app/blob/main/lib/signup_screen.dart): `lib/signup_screen.dart`
- [Profile](https://github.com/maheenawan-dev/bloome-flower-bouquet-app/blob/main/lib/profile_screen.dart): `lib/profile_screen.dart`
- [Settings](https://github.com/maheenawan-dev/bloome-flower-bouquet-app/blob/main/lib/settings_screen.dart): `lib/settings_screen.dart`
- [Notifications](https://github.com/maheenawan-dev/bloome-flower-bouquet-app/blob/main/lib/notification_screen.dart): `lib/notification_screen.dart`
- [About Bloomé](https://github.com/maheenawan-dev/bloome-flower-bouquet-app/blob/main/lib/about_us_screen.dart): `lib/about_us_screen.dart`
- [Contact Us](https://github.com/maheenawan-dev/bloome-flower-bouquet-app/blob/main/lib/contact_us_screen.dart): `lib/contact_us_screen.dart`

### App State

- [Cart State](https://github.com/maheenawan-dev/bloome-flower-bouquet-app/blob/main/lib/cart_manager.dart): `lib/cart_manager.dart`
- [Favorites State](https://github.com/maheenawan-dev/bloome-flower-bouquet-app/blob/main/lib/favorites_manager.dart): `lib/favorites_manager.dart`
- [Order State](https://github.com/maheenawan-dev/bloome-flower-bouquet-app/blob/main/lib/order_manager.dart): `lib/order_manager.dart`
- [User State](https://github.com/maheenawan-dev/bloome-flower-bouquet-app/blob/main/lib/user_manager.dart): `lib/user_manager.dart`
- [Notification State](https://github.com/maheenawan-dev/bloome-flower-bouquet-app/blob/main/lib/notification_manager.dart): `lib/notification_manager.dart`
- [Theme Preference](https://github.com/maheenawan-dev/bloome-flower-bouquet-app/blob/main/lib/theme_manager.dart): `lib/theme_manager.dart`
- [Language Preference](https://github.com/maheenawan-dev/bloome-flower-bouquet-app/blob/main/lib/language_manager.dart): `lib/language_manager.dart`

### App Shell

- [App Entry](https://github.com/maheenawan-dev/bloome-flower-bouquet-app/blob/main/lib/main.dart): `lib/main.dart`
- [Navigation Menu](https://github.com/maheenawan-dev/bloome-flower-bouquet-app/blob/main/lib/menu_drawer.dart): `lib/menu_drawer.dart`

### Other components

- **Shopper**

## Connections

- Shopper → App Entry: opens app
- App Entry → Browse & Search: presents shopping
- Browse & Search → Bouquet Card: shows bouquets
- Browse & Search → Bouquet Details: opens bouquet
- Bouquet Details → Customize Bouquet: starts customization
- Bouquet Details → Cart State: adds item
- Customize Bouquet → Cart State: adds custom item
- Bouquet Details → Favorites State: updates favorites
- Favorites Screen → Favorites State: reads favorites
- Cart Screen → Cart State: manages items
- Cart Screen → Checkout & Payment: continues checkout
- Checkout & Payment → Order State: records order
- Order History → Order State: reads orders
- Login → User State: manages account
- Sign Up → User State: manages account
- Profile → User State: reads profile
- Notifications → Notification State: manages read status
- Settings → Theme Preference: manages theme
- Settings → Language Preference: manages language
- Navigation Menu → Browse & Search: navigates to
- Navigation Menu → Favorites Screen: navigates to
- Navigation Menu → Cart Screen: navigates to
- Navigation Menu → Order History: navigates to
- Navigation Menu → Notifications: navigates to
- Navigation Menu → Profile: navigates to
- Navigation Menu → Settings: navigates to
- Navigation Menu → About Bloomé: navigates to
- Navigation Menu → Contact Us: navigates to
