# vara1234567890/salessavvy architecture

> Architecture diagram of the GitHub repository vara1234567890/salessavvy, 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/vara1234567890/salessavvy
- Repository: https://github.com/vara1234567890/salessavvy

## Overview

SalesSavvy is a web storefront with separate customer and administrator journeys: customers authenticate, browse products, manage a cart, pay, and view orders; administrators manage products and users and inspect business metrics. The React router selects the screens, which make requests to the Spring backend. The tree identifies backend controllers, services, and repositories, but their implementations were not sampled, so internal backend call and persistence relationships are not asserted. Checkout’s Razorpay interaction is visible in the cart screen.

Main entry points: [`SalesSavvy/frontend/src/AppRoutes.jsx`](https://github.com/vara1234567890/salessavvy/blob/master/SalesSavvy/frontend/src/AppRoutes.jsx) (App routes), [`SalesSavvy/frontend/src/AdminDashboard.jsx`](https://github.com/vara1234567890/salessavvy/blob/master/SalesSavvy/frontend/src/AdminDashboard.jsx) (Admin dashboard), [`SalesSavvy/frontend/src/CartPage.jsx`](https://github.com/vara1234567890/salessavvy/blob/master/SalesSavvy/frontend/src/CartPage.jsx) (Cart and checkout), [`SalesSavvy/frontend/src/LoginPage.jsx`](https://github.com/vara1234567890/salessavvy/blob/master/SalesSavvy/frontend/src/LoginPage.jsx) (Customer login)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_frontend["Customer frontend"]
  node_router["App routes<br/>[AppRoutes.jsx]"]
  node_login["Customer login<br/>[LoginPage.jsx]"]
  node_registration["Registration"]
  node_storefront["Storefront"]
  node_product_list["Product listing<br/>[ProductList.jsx]"]
  node_cart["Cart and checkout<br/>[CartPage.jsx]"]
  node_orders_view["Order history<br/>[OrdersPage.jsx]"]
  node_admin_login["Admin login<br/>[AdminLogin.jsx]"]
  node_admin_dashboard["Admin dashboard<br/>[AdminDashboard.jsx]"]
  node_admin_modal["Admin forms<br/>[CustomModal.jsx]"]
end

subgraph group_commerce["Commerce backend"]
  node_auth_controller["Authentication API"]
  node_product_controller["Product API"]
  node_cart_controller["Cart API"]
  node_order_controller["Order API"]
  node_payment_controller["Payment API"]
  node_payment_service["Payment service"]
end

subgraph group_admin["Admin operations"]
  node_admin_business["Business reporting"]
  node_admin_products["Product administration"]
  node_admin_users["User administration"]
end

subgraph group_data["Persistence"]
  node_repositories[("Data repositories")]
end

node_user(("Customer"))
node_admin_user(("Administrator"))
node_razorpay["Razorpay"]

node_user -->|"uses"| node_router
node_admin_user -->|"uses"| node_router
node_router -->|"routes"| node_login
node_router -->|"routes"| node_registration
node_router -->|"routes"| node_storefront
node_router -->|"routes"| node_cart
node_router -->|"routes"| node_orders_view
node_router -->|"routes"| node_admin_login
node_router -->|"routes"| node_admin_dashboard
node_storefront -->|"renders"| node_product_list
node_login -->|"POST login"| node_auth_controller
node_cart -->|"cart requests"| node_cart_controller
node_cart -->|"creates and verifies"| node_payment_controller
node_cart -.->|"opens checkout"| node_razorpay
node_orders_view -->|"fetches orders"| node_order_controller
node_admin_dashboard -->|"opens forms"| node_admin_modal
node_admin_dashboard -->|"requests reports"| node_admin_business
node_admin_dashboard -->|"product requests"| node_admin_products
node_admin_dashboard -->|"user requests"| node_admin_users
node_payment_controller -->|"delegates"| node_payment_service

click node_router "https://github.com/vara1234567890/salessavvy/blob/master/SalesSavvy/frontend/src/AppRoutes.jsx"
click node_login "https://github.com/vara1234567890/salessavvy/blob/master/SalesSavvy/frontend/src/LoginPage.jsx"
click node_registration "https://github.com/vara1234567890/salessavvy/blob/master/SalesSavvy/frontend/src/RegistrationPage.jsx"
click node_storefront "https://github.com/vara1234567890/salessavvy/blob/master/SalesSavvy/frontend/src/CustomerHomePage.jsx"
click node_product_list "https://github.com/vara1234567890/salessavvy/blob/master/SalesSavvy/frontend/src/ProductList.jsx"
click node_cart "https://github.com/vara1234567890/salessavvy/blob/master/SalesSavvy/frontend/src/CartPage.jsx"
click node_orders_view "https://github.com/vara1234567890/salessavvy/blob/master/SalesSavvy/frontend/src/OrdersPage.jsx"
click node_admin_login "https://github.com/vara1234567890/salessavvy/blob/master/SalesSavvy/frontend/src/AdminLogin.jsx"
click node_admin_dashboard "https://github.com/vara1234567890/salessavvy/blob/master/SalesSavvy/frontend/src/AdminDashboard.jsx"
click node_admin_modal "https://github.com/vara1234567890/salessavvy/blob/master/SalesSavvy/frontend/src/CustomModal.jsx"
click node_auth_controller "https://github.com/vara1234567890/salessavvy/blob/master/SalesSavvy/src/main/java/com/example/demo/controllers/AuthController.java"
click node_product_controller "https://github.com/vara1234567890/salessavvy/blob/master/SalesSavvy/src/main/java/com/example/demo/controllers/ProductController.java"
click node_cart_controller "https://github.com/vara1234567890/salessavvy/blob/master/SalesSavvy/src/main/java/com/example/demo/controllers/CartController.java"
click node_order_controller "https://github.com/vara1234567890/salessavvy/blob/master/SalesSavvy/src/main/java/com/example/demo/controllers/OrderController.java"
click node_payment_controller "https://github.com/vara1234567890/salessavvy/blob/master/SalesSavvy/src/main/java/com/example/demo/controllers/PaymentController.java"
click node_payment_service "https://github.com/vara1234567890/salessavvy/blob/master/SalesSavvy/src/main/java/com/example/demo/services/PaymentService.java"
click node_admin_business "https://github.com/vara1234567890/salessavvy/blob/master/SalesSavvy/src/main/java/com/example/demo/adminController/AdminBusinessController.java"
click node_admin_products "https://github.com/vara1234567890/salessavvy/blob/master/SalesSavvy/src/main/java/com/example/demo/adminController/AdminProductController.java"
click node_admin_users "https://github.com/vara1234567890/salessavvy/blob/master/SalesSavvy/src/main/java/com/example/demo/adminController/AdminUserController.java"
click node_repositories "https://github.com/vara1234567890/salessavvy/tree/master/SalesSavvy/src/main/java/com/example/demo/repositories"

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_router,node_login,node_registration,node_storefront,node_product_list,node_cart,node_orders_view,node_admin_login,node_admin_dashboard,node_admin_modal toneBlue
class node_auth_controller,node_product_controller,node_cart_controller,node_order_controller,node_payment_controller,node_payment_service toneAmber
class node_admin_business,node_admin_products,node_admin_users toneMint
class node_repositories toneRose
class node_user,node_admin_user,node_razorpay toneIndigo
```

## Components

### Customer frontend

- [App routes](https://github.com/vara1234567890/salessavvy/blob/master/SalesSavvy/frontend/src/AppRoutes.jsx): `SalesSavvy/frontend/src/AppRoutes.jsx`
- [Customer login](https://github.com/vara1234567890/salessavvy/blob/master/SalesSavvy/frontend/src/LoginPage.jsx): `SalesSavvy/frontend/src/LoginPage.jsx`
- [Registration](https://github.com/vara1234567890/salessavvy/blob/master/SalesSavvy/frontend/src/RegistrationPage.jsx): `SalesSavvy/frontend/src/RegistrationPage.jsx`
- [Storefront](https://github.com/vara1234567890/salessavvy/blob/master/SalesSavvy/frontend/src/CustomerHomePage.jsx): `SalesSavvy/frontend/src/CustomerHomePage.jsx`
- [Product listing](https://github.com/vara1234567890/salessavvy/blob/master/SalesSavvy/frontend/src/ProductList.jsx): `SalesSavvy/frontend/src/ProductList.jsx`
- [Cart and checkout](https://github.com/vara1234567890/salessavvy/blob/master/SalesSavvy/frontend/src/CartPage.jsx): `SalesSavvy/frontend/src/CartPage.jsx`
- [Order history](https://github.com/vara1234567890/salessavvy/blob/master/SalesSavvy/frontend/src/OrdersPage.jsx): `SalesSavvy/frontend/src/OrdersPage.jsx`
- [Admin login](https://github.com/vara1234567890/salessavvy/blob/master/SalesSavvy/frontend/src/AdminLogin.jsx): `SalesSavvy/frontend/src/AdminLogin.jsx`
- [Admin dashboard](https://github.com/vara1234567890/salessavvy/blob/master/SalesSavvy/frontend/src/AdminDashboard.jsx): `SalesSavvy/frontend/src/AdminDashboard.jsx`
- [Admin forms](https://github.com/vara1234567890/salessavvy/blob/master/SalesSavvy/frontend/src/CustomModal.jsx): `SalesSavvy/frontend/src/CustomModal.jsx`

### Commerce backend

- [Authentication API](https://github.com/vara1234567890/salessavvy/blob/master/SalesSavvy/src/main/java/com/example/demo/controllers/AuthController.java): `SalesSavvy/src/main/java/com/example/demo/controllers/AuthController.java`
- [Product API](https://github.com/vara1234567890/salessavvy/blob/master/SalesSavvy/src/main/java/com/example/demo/controllers/ProductController.java): `SalesSavvy/src/main/java/com/example/demo/controllers/ProductController.java`
- [Cart API](https://github.com/vara1234567890/salessavvy/blob/master/SalesSavvy/src/main/java/com/example/demo/controllers/CartController.java): `SalesSavvy/src/main/java/com/example/demo/controllers/CartController.java`
- [Order API](https://github.com/vara1234567890/salessavvy/blob/master/SalesSavvy/src/main/java/com/example/demo/controllers/OrderController.java): `SalesSavvy/src/main/java/com/example/demo/controllers/OrderController.java`
- [Payment API](https://github.com/vara1234567890/salessavvy/blob/master/SalesSavvy/src/main/java/com/example/demo/controllers/PaymentController.java): `SalesSavvy/src/main/java/com/example/demo/controllers/PaymentController.java`
- [Payment service](https://github.com/vara1234567890/salessavvy/blob/master/SalesSavvy/src/main/java/com/example/demo/services/PaymentService.java): `SalesSavvy/src/main/java/com/example/demo/services/PaymentService.java`

### Admin operations

- [Business reporting](https://github.com/vara1234567890/salessavvy/blob/master/SalesSavvy/src/main/java/com/example/demo/adminController/AdminBusinessController.java): `SalesSavvy/src/main/java/com/example/demo/adminController/AdminBusinessController.java`
- [Product administration](https://github.com/vara1234567890/salessavvy/blob/master/SalesSavvy/src/main/java/com/example/demo/adminController/AdminProductController.java): `SalesSavvy/src/main/java/com/example/demo/adminController/AdminProductController.java`
- [User administration](https://github.com/vara1234567890/salessavvy/blob/master/SalesSavvy/src/main/java/com/example/demo/adminController/AdminUserController.java): `SalesSavvy/src/main/java/com/example/demo/adminController/AdminUserController.java`

### Persistence

- [Data repositories](https://github.com/vara1234567890/salessavvy/tree/master/SalesSavvy/src/main/java/com/example/demo/repositories): `SalesSavvy/src/main/java/com/example/demo/repositories`

### Other components

- **Customer**
- **Administrator**
- **Razorpay**

## Connections

- Customer → App routes: uses
- Administrator → App routes: uses
- App routes → Customer login: routes
- App routes → Registration: routes
- App routes → Storefront: routes
- App routes → Cart and checkout: routes
- App routes → Order history: routes
- App routes → Admin login: routes
- App routes → Admin dashboard: routes
- Storefront → Product listing: renders
- Customer login → Authentication API: POST login
- Cart and checkout → Cart API: cart requests
- Cart and checkout → Payment API: creates and verifies
- Cart and checkout → Razorpay: opens checkout
- Order history → Order API: fetches orders
- Admin dashboard → Admin forms: opens forms
- Admin dashboard → Business reporting: requests reports
- Admin dashboard → Product administration: product requests
- Admin dashboard → User administration: user requests
- Payment API → Payment service: delegates
