# hadeed1009/shopping_app architecture

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

- Interactive diagram: https://gitdiagram.com/hadeed1009/shopping_app
- Repository: https://github.com/hadeed1009/shopping_app

## Overview

Laylo appears to be an Android shopping app: users browse home and category listings, inspect items, and manage a cart, with login, registration, profile, and address UI also present. The tree identifies these screens and supporting adapters/models, but no runtime source or README was provided, so the workflow links below are dashed and unverified; their exact call order and persistence behavior cannot be established.

Main entry points: [`app/src/main/java/com/example/laylo/MainActivity.java`](https://github.com/hadeed1009/shopping_app/blob/master/app/src/main/java/com/example/laylo/MainActivity.java) (Main navigation), [`app/src/main/java/com/example/laylo/HomeFragment.java`](https://github.com/hadeed1009/shopping_app/blob/master/app/src/main/java/com/example/laylo/HomeFragment.java) (Home browsing), [`app/src/main/java/com/example/laylo/CategoriesFragment.java`](https://github.com/hadeed1009/shopping_app/blob/master/app/src/main/java/com/example/laylo/CategoriesFragment.java) (Categories), [`app/src/main/java/com/example/laylo/CartFragment.java`](https://github.com/hadeed1009/shopping_app/blob/master/app/src/main/java/com/example/laylo/CartFragment.java) (Cart)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_entry["Entry and account"]
  node_splash["Splash screen<br/>[SplashScreen.java]"]
  node_login["Login<br/>[Login.java]"]
  node_register["Registration<br/>[Register.java]"]
  node_main["Main navigation<br/>[MainActivity.java]"]
end

subgraph group_browse["Shopping discovery"]
  node_home["Home browsing<br/>[HomeFragment.java]"]
  node_categories["Categories"]
  node_categorylist["Category listing"]
  node_itemdetail["Item details"]
end

subgraph group_cart["Cart and account"]
  node_cart["Cart<br/>[CartFragment.java]"]
  node_initialcart["Initial cart"]
  node_address["Address sheet"]
  node_profile["Profile"]
  node_more["More options<br/>[MoreFragment.java]"]
end

subgraph group_internal["Presentation data"]
  node_productmodels["Product models<br/>[HomeModel.java]"]
  node_categorymodels["Category models"]
  node_cartmodels["Cart models<br/>[Cart.java]"]
  node_homeadapters["Home adapters"]
  node_categoryadapters["Category adapters"]
  node_cartadapter["Cart adapter<br/>[Cart_Adapter.java]"]
end

node_shopper(("Shopper"))

node_shopper -.->|"opens app"| node_splash
node_splash -.->|"continues to"| node_main
node_shopper -.->|"signs in"| node_login
node_shopper -.->|"creates account"| node_register
node_shopper -.->|"browses"| node_main
node_main -.->|"shows"| node_home
node_main -.->|"shows"| node_categories
node_categories -.->|"opens listing"| node_categorylist
node_home -.->|"opens item"| node_itemdetail
node_categorylist -.->|"opens item"| node_itemdetail
node_main -.->|"shows"| node_cart
node_cart -.->|"opens address"| node_address
node_main -.->|"shows"| node_profile
node_main -.->|"shows"| node_more
node_home -.->|"renders with"| node_homeadapters
node_homeadapters -.->|"uses"| node_productmodels
node_categories -.->|"renders with"| node_categoryadapters
node_categoryadapters -.->|"uses"| node_categorymodels
node_cart -.->|"renders with"| node_cartadapter
node_cartadapter -.->|"uses"| node_cartmodels

click node_splash "https://github.com/hadeed1009/shopping_app/blob/master/app/src/main/java/com/example/laylo/SplashScreen.java"
click node_login "https://github.com/hadeed1009/shopping_app/blob/master/app/src/main/java/com/example/laylo/Login.java"
click node_register "https://github.com/hadeed1009/shopping_app/blob/master/app/src/main/java/com/example/laylo/Register.java"
click node_main "https://github.com/hadeed1009/shopping_app/blob/master/app/src/main/java/com/example/laylo/MainActivity.java"
click node_home "https://github.com/hadeed1009/shopping_app/blob/master/app/src/main/java/com/example/laylo/HomeFragment.java"
click node_categories "https://github.com/hadeed1009/shopping_app/blob/master/app/src/main/java/com/example/laylo/CategoriesFragment.java"
click node_categorylist "https://github.com/hadeed1009/shopping_app/blob/master/app/src/main/java/com/example/laylo/CategoryListActivity.java"
click node_itemdetail "https://github.com/hadeed1009/shopping_app/blob/master/app/src/main/java/com/example/laylo/ItemDescription.java"
click node_cart "https://github.com/hadeed1009/shopping_app/blob/master/app/src/main/java/com/example/laylo/CartFragment.java"
click node_initialcart "https://github.com/hadeed1009/shopping_app/blob/master/app/src/main/java/com/example/laylo/InitialCartFragment.java"
click node_address "https://github.com/hadeed1009/shopping_app/blob/master/app/src/main/java/com/example/laylo/AddressBottomSheet.java"
click node_profile "https://github.com/hadeed1009/shopping_app/blob/master/app/src/main/java/com/example/laylo/ProfileFragment.java"
click node_more "https://github.com/hadeed1009/shopping_app/blob/master/app/src/main/java/com/example/laylo/MoreFragment.java"
click node_productmodels "https://github.com/hadeed1009/shopping_app/blob/master/app/src/main/java/com/example/laylo/Modelss/HomeModel.java"
click node_categorymodels "https://github.com/hadeed1009/shopping_app/blob/master/app/src/main/java/com/example/laylo/Modelss/CategoryModels.java"
click node_cartmodels "https://github.com/hadeed1009/shopping_app/blob/master/app/src/main/java/com/example/laylo/Modelss/Cart.java"
click node_homeadapters "https://github.com/hadeed1009/shopping_app/blob/master/app/src/main/java/com/example/laylo/Adapterss/Home_Horizontal_Adapter.java"
click node_categoryadapters "https://github.com/hadeed1009/shopping_app/blob/master/app/src/main/java/com/example/laylo/Adapterss/Category_Adapter.java"
click node_cartadapter "https://github.com/hadeed1009/shopping_app/blob/master/app/src/main/java/com/example/laylo/Adapterss/Cart_Adapter.java"

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_splash,node_login,node_register,node_main toneBlue
class node_home,node_categories,node_categorylist,node_itemdetail toneAmber
class node_cart,node_initialcart,node_address,node_profile,node_more toneMint
class node_productmodels,node_categorymodels,node_cartmodels,node_homeadapters,node_categoryadapters,node_cartadapter toneRose
class node_shopper toneIndigo
```

## Components

### Entry and account

- [Splash screen](https://github.com/hadeed1009/shopping_app/blob/master/app/src/main/java/com/example/laylo/SplashScreen.java): `app/src/main/java/com/example/laylo/SplashScreen.java`
- [Login](https://github.com/hadeed1009/shopping_app/blob/master/app/src/main/java/com/example/laylo/Login.java): `app/src/main/java/com/example/laylo/Login.java`
- [Registration](https://github.com/hadeed1009/shopping_app/blob/master/app/src/main/java/com/example/laylo/Register.java): `app/src/main/java/com/example/laylo/Register.java`
- [Main navigation](https://github.com/hadeed1009/shopping_app/blob/master/app/src/main/java/com/example/laylo/MainActivity.java): `app/src/main/java/com/example/laylo/MainActivity.java`

### Shopping discovery

- [Home browsing](https://github.com/hadeed1009/shopping_app/blob/master/app/src/main/java/com/example/laylo/HomeFragment.java): `app/src/main/java/com/example/laylo/HomeFragment.java`
- [Categories](https://github.com/hadeed1009/shopping_app/blob/master/app/src/main/java/com/example/laylo/CategoriesFragment.java): `app/src/main/java/com/example/laylo/CategoriesFragment.java`
- [Category listing](https://github.com/hadeed1009/shopping_app/blob/master/app/src/main/java/com/example/laylo/CategoryListActivity.java): `app/src/main/java/com/example/laylo/CategoryListActivity.java`
- [Item details](https://github.com/hadeed1009/shopping_app/blob/master/app/src/main/java/com/example/laylo/ItemDescription.java): `app/src/main/java/com/example/laylo/ItemDescription.java`

### Cart and account

- [Cart](https://github.com/hadeed1009/shopping_app/blob/master/app/src/main/java/com/example/laylo/CartFragment.java): `app/src/main/java/com/example/laylo/CartFragment.java`
- [Initial cart](https://github.com/hadeed1009/shopping_app/blob/master/app/src/main/java/com/example/laylo/InitialCartFragment.java): `app/src/main/java/com/example/laylo/InitialCartFragment.java`
- [Address sheet](https://github.com/hadeed1009/shopping_app/blob/master/app/src/main/java/com/example/laylo/AddressBottomSheet.java): `app/src/main/java/com/example/laylo/AddressBottomSheet.java`
- [Profile](https://github.com/hadeed1009/shopping_app/blob/master/app/src/main/java/com/example/laylo/ProfileFragment.java): `app/src/main/java/com/example/laylo/ProfileFragment.java`
- [More options](https://github.com/hadeed1009/shopping_app/blob/master/app/src/main/java/com/example/laylo/MoreFragment.java): `app/src/main/java/com/example/laylo/MoreFragment.java`

### Presentation data

- [Product models](https://github.com/hadeed1009/shopping_app/blob/master/app/src/main/java/com/example/laylo/Modelss/HomeModel.java): `app/src/main/java/com/example/laylo/Modelss/HomeModel.java`
- [Category models](https://github.com/hadeed1009/shopping_app/blob/master/app/src/main/java/com/example/laylo/Modelss/CategoryModels.java): `app/src/main/java/com/example/laylo/Modelss/CategoryModels.java`
- [Cart models](https://github.com/hadeed1009/shopping_app/blob/master/app/src/main/java/com/example/laylo/Modelss/Cart.java): `app/src/main/java/com/example/laylo/Modelss/Cart.java`
- [Home adapters](https://github.com/hadeed1009/shopping_app/blob/master/app/src/main/java/com/example/laylo/Adapterss/Home_Horizontal_Adapter.java): `app/src/main/java/com/example/laylo/Adapterss/Home_Horizontal_Adapter.java`
- [Category adapters](https://github.com/hadeed1009/shopping_app/blob/master/app/src/main/java/com/example/laylo/Adapterss/Category_Adapter.java): `app/src/main/java/com/example/laylo/Adapterss/Category_Adapter.java`
- [Cart adapter](https://github.com/hadeed1009/shopping_app/blob/master/app/src/main/java/com/example/laylo/Adapterss/Cart_Adapter.java): `app/src/main/java/com/example/laylo/Adapterss/Cart_Adapter.java`

### Other components

- **Shopper**

## Connections

- Shopper → Splash screen: opens app
- Splash screen → Main navigation: continues to
- Shopper → Login: signs in
- Shopper → Registration: creates account
- Shopper → Main navigation: browses
- Main navigation → Home browsing: shows
- Main navigation → Categories: shows
- Categories → Category listing: opens listing
- Home browsing → Item details: opens item
- Category listing → Item details: opens item
- Main navigation → Cart: shows
- Cart → Address sheet: opens address
- Main navigation → Profile: shows
- Main navigation → More options: shows
- Home browsing → Home adapters: renders with
- Home adapters → Product models: uses
- Categories → Category adapters: renders with
- Category adapters → Category models: uses
- Cart → Cart adapter: renders with
- Cart adapter → Cart models: uses
