# tesla2402/manas_kriti_software_ps architecture

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

- Interactive diagram: https://gitdiagram.com/tesla2402/manas_kriti_software_ps
- Repository: https://github.com/tesla2402/manas_kriti_software_ps

## Overview

Campus Catalogue is a Flutter campus food-ordering app with buyer and shopkeeper experiences, backed by Firebase according to the README. The buyer journey covers onboarding and sign-in, shop discovery, item selection, cart and payment; the seller experience includes shop setup, menu editing and order management. The tree identifies the corresponding screens, models and services, but the supplied source excerpts do not include their Dart implementations, so internal calls and data-flow wiring are shown only where documented. Native platform startup code is not part of the product workflow.

Main entry points: [`campus_catalogue/lib/screens/sign_in.dart`](https://github.com/tesla2402/manas_kriti_software_ps/blob/main/campus_catalogue/lib/screens/sign_in.dart) (Login and signup), [`campus_catalogue/lib/screens/seller_home_screen.dart`](https://github.com/tesla2402/manas_kriti_software_ps/blob/main/campus_catalogue/lib/screens/seller_home_screen.dart) (Seller home), [`campus_catalogue/lib/main.dart`](https://github.com/tesla2402/manas_kriti_software_ps/blob/main/campus_catalogue/lib/main.dart) (Flutter app entry), [`campus_catalogue/lib/screens/onboarding_screen.dart`](https://github.com/tesla2402/manas_kriti_software_ps/blob/main/campus_catalogue/lib/screens/onboarding_screen.dart) (Onboarding)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_identity["Entry and identity"]
  node_entry["Flutter app entry<br/>[main.dart]"]
  node_onboarding["Onboarding"]
  node_sign_in["Login and signup<br/>[sign_in.dart]"]
  node_otp["OTP verification<br/>[verify_otp.dart]"]
  node_buyer_details["Buyer details<br/>[buyer_details.dart]"]
  node_seller_details["Seller details"]
end

subgraph group_buyer["Buyer experience"]
  node_home["Buyer home<br/>[home_screen.dart]"]
  node_search["Search results<br/>[search_screen.dart]"]
  node_shop_info["Shop information<br/>[shop_info.dart]"]
  node_cart["Cart and orders<br/>[cart.dart]"]
  node_payment["Payment gateway"]
end

subgraph group_seller["Shopkeeper experience"]
  node_seller_home["Seller home"]
  node_seller_manage["Menu management<br/>[add_item.dart]"]
  node_shop_setup["Shop setup<br/>[add_shop.dart]"]
  node_seller_orders["Seller orders<br/>[seller_home.dart]"]
end

subgraph group_domain["Domain and backend"]
  node_models["Catalogue and order models"]
  node_database_service["Database service"]
  node_firebase[("Firebase backend")]
end

node_user(("App user"))

node_user -->|"opens app"| node_entry
node_entry -->|"starts at"| node_onboarding
node_onboarding -->|"continues to"| node_sign_in
node_sign_in -->|"verifies identity"| node_otp
node_sign_in -->|"buyer setup"| node_buyer_details
node_sign_in -->|"seller setup"| node_seller_details
node_buyer_details -->|"enters buyer flow"| node_home
node_home -->|"finds shops"| node_search
node_search -->|"views shop"| node_shop_info
node_shop_info -->|"selects items"| node_cart
node_cart -->|"pays"| node_payment
node_seller_details -->|"enters seller flow"| node_seller_home
node_seller_home -->|"edits menu"| node_seller_manage
node_seller_home -->|"sets up shop"| node_shop_setup
node_seller_home -->|"manages orders"| node_seller_orders
node_database_service -->|"uses backend"| node_firebase

click node_entry "https://github.com/tesla2402/manas_kriti_software_ps/blob/main/campus_catalogue/lib/main.dart"
click node_onboarding "https://github.com/tesla2402/manas_kriti_software_ps/blob/main/campus_catalogue/lib/screens/onboarding_screen.dart"
click node_sign_in "https://github.com/tesla2402/manas_kriti_software_ps/blob/main/campus_catalogue/lib/screens/sign_in.dart"
click node_otp "https://github.com/tesla2402/manas_kriti_software_ps/blob/main/campus_catalogue/lib/screens/verify_otp.dart"
click node_buyer_details "https://github.com/tesla2402/manas_kriti_software_ps/blob/main/campus_catalogue/lib/screens/userInformation/buyer_details.dart"
click node_seller_details "https://github.com/tesla2402/manas_kriti_software_ps/blob/main/campus_catalogue/lib/screens/userInformation/seller_details.dart"
click node_home "https://github.com/tesla2402/manas_kriti_software_ps/blob/main/campus_catalogue/lib/screens/home_screen.dart"
click node_search "https://github.com/tesla2402/manas_kriti_software_ps/blob/main/campus_catalogue/lib/screens/search_screen.dart"
click node_shop_info "https://github.com/tesla2402/manas_kriti_software_ps/blob/main/campus_catalogue/lib/screens/shop_info.dart"
click node_cart "https://github.com/tesla2402/manas_kriti_software_ps/blob/main/campus_catalogue/lib/screens/cart.dart"
click node_payment "https://github.com/tesla2402/manas_kriti_software_ps/blob/main/campus_catalogue/lib/payment_gateway.dart"
click node_seller_home "https://github.com/tesla2402/manas_kriti_software_ps/blob/main/campus_catalogue/lib/screens/seller_home_screen.dart"
click node_seller_manage "https://github.com/tesla2402/manas_kriti_software_ps/blob/main/campus_catalogue/lib/add_item.dart"
click node_shop_setup "https://github.com/tesla2402/manas_kriti_software_ps/blob/main/campus_catalogue/lib/add_shop.dart"
click node_seller_orders "https://github.com/tesla2402/manas_kriti_software_ps/blob/main/campus_catalogue/lib/screens/seller_home.dart"
click node_models "https://github.com/tesla2402/manas_kriti_software_ps/tree/main/campus_catalogue/lib/models"
click node_database_service "https://github.com/tesla2402/manas_kriti_software_ps/blob/main/campus_catalogue/lib/services/database_service.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_entry,node_onboarding,node_sign_in,node_otp,node_buyer_details,node_seller_details,node_user toneBlue
class node_home,node_search,node_shop_info,node_cart,node_payment toneAmber
class node_seller_home,node_seller_manage,node_shop_setup,node_seller_orders toneMint
class node_models,node_database_service,node_firebase toneRose
```

## Components

### Entry and identity

- [Flutter app entry](https://github.com/tesla2402/manas_kriti_software_ps/blob/main/campus_catalogue/lib/main.dart): `campus_catalogue/lib/main.dart`
- [Onboarding](https://github.com/tesla2402/manas_kriti_software_ps/blob/main/campus_catalogue/lib/screens/onboarding_screen.dart): `campus_catalogue/lib/screens/onboarding_screen.dart`
- [Login and signup](https://github.com/tesla2402/manas_kriti_software_ps/blob/main/campus_catalogue/lib/screens/sign_in.dart): `campus_catalogue/lib/screens/sign_in.dart`
- [OTP verification](https://github.com/tesla2402/manas_kriti_software_ps/blob/main/campus_catalogue/lib/screens/verify_otp.dart): `campus_catalogue/lib/screens/verify_otp.dart`
- [Buyer details](https://github.com/tesla2402/manas_kriti_software_ps/blob/main/campus_catalogue/lib/screens/userInformation/buyer_details.dart): `campus_catalogue/lib/screens/userInformation/buyer_details.dart`
- [Seller details](https://github.com/tesla2402/manas_kriti_software_ps/blob/main/campus_catalogue/lib/screens/userInformation/seller_details.dart): `campus_catalogue/lib/screens/userInformation/seller_details.dart`

### Buyer experience

- [Buyer home](https://github.com/tesla2402/manas_kriti_software_ps/blob/main/campus_catalogue/lib/screens/home_screen.dart): `campus_catalogue/lib/screens/home_screen.dart`
- [Search results](https://github.com/tesla2402/manas_kriti_software_ps/blob/main/campus_catalogue/lib/screens/search_screen.dart): `campus_catalogue/lib/screens/search_screen.dart`
- [Shop information](https://github.com/tesla2402/manas_kriti_software_ps/blob/main/campus_catalogue/lib/screens/shop_info.dart): `campus_catalogue/lib/screens/shop_info.dart`
- [Cart and orders](https://github.com/tesla2402/manas_kriti_software_ps/blob/main/campus_catalogue/lib/screens/cart.dart): `campus_catalogue/lib/screens/cart.dart`
- [Payment gateway](https://github.com/tesla2402/manas_kriti_software_ps/blob/main/campus_catalogue/lib/payment_gateway.dart): `campus_catalogue/lib/payment_gateway.dart`

### Shopkeeper experience

- [Seller home](https://github.com/tesla2402/manas_kriti_software_ps/blob/main/campus_catalogue/lib/screens/seller_home_screen.dart): `campus_catalogue/lib/screens/seller_home_screen.dart`
- [Menu management](https://github.com/tesla2402/manas_kriti_software_ps/blob/main/campus_catalogue/lib/add_item.dart): `campus_catalogue/lib/add_item.dart`
- [Shop setup](https://github.com/tesla2402/manas_kriti_software_ps/blob/main/campus_catalogue/lib/add_shop.dart): `campus_catalogue/lib/add_shop.dart`
- [Seller orders](https://github.com/tesla2402/manas_kriti_software_ps/blob/main/campus_catalogue/lib/screens/seller_home.dart): `campus_catalogue/lib/screens/seller_home.dart`

### Domain and backend

- [Catalogue and order models](https://github.com/tesla2402/manas_kriti_software_ps/tree/main/campus_catalogue/lib/models): `campus_catalogue/lib/models`
- [Database service](https://github.com/tesla2402/manas_kriti_software_ps/blob/main/campus_catalogue/lib/services/database_service.dart): `campus_catalogue/lib/services/database_service.dart`
- **Firebase backend**

### Other components

- **App user**

## Connections

- App user → Flutter app entry: opens app
- Flutter app entry → Onboarding: starts at
- Onboarding → Login and signup: continues to
- Login and signup → OTP verification: verifies identity
- Login and signup → Buyer details: buyer setup
- Login and signup → Seller details: seller setup
- Buyer details → Buyer home: enters buyer flow
- Buyer home → Search results: finds shops
- Search results → Shop information: views shop
- Shop information → Cart and orders: selects items
- Cart and orders → Payment gateway: pays
- Seller details → Seller home: enters seller flow
- Seller home → Menu management: edits menu
- Seller home → Shop setup: sets up shop
- Seller home → Seller orders: manages orders
- Database service → Firebase backend: uses backend
