# hoannghi16/3dsolutions_backend architecture

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

- Interactive diagram: https://gitdiagram.com/hoannghi16/3dsolutions_backend
- Repository: https://github.com/hoannghi16/3dsolutions_backend

## Overview

3D Solutions is a Django REST backend for a frontend shopping experience. The principal workflow is browsing products, managing a cart, previewing and creating an order, then handling payment and order status. User accounts and admin operations support that flow; service offerings and product-image hosting are separate capabilities. The tree and README establish the app boundaries, but most app views and URL mappings were not sampled, so their internal wiring is shown only where supported by the excerpts.

Main entry points: [`orders_management/views.py`](https://github.com/hoannghi16/3dsolutions_backend/blob/main/orders_management/views.py) (Order processing), [`products_management/views.py`](https://github.com/hoannghi16/3dsolutions_backend/blob/main/products_management/views.py) (Product catalog), [`core/settings.py`](https://github.com/hoannghi16/3dsolutions_backend/blob/main/core/settings.py) (Django settings), [`products_management/models.py`](https://github.com/hoannghi16/3dsolutions_backend/blob/main/products_management/models.py) (Product data)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_api["API runtime"]
  node_routing["Root URL config<br/>[urls.py]"]
  node_settings["Django settings<br/>[settings.py]"]
end

subgraph group_commerce["Commerce domains"]
  node_products["Product catalog<br/>[views.py]"]
  node_product_data[("Product data<br/>[models.py]")]
  node_product_serializers["Product serializers<br/>[serializer.py]"]
  node_cart["Cart API<br/>[views.py]"]
  node_cart_data[("Cart data<br/>[models.py]")]
  node_orders["Order processing<br/>[views.py]"]
  node_order_data[("Order data<br/>[models.py]")]
  node_order_serializers["Order serializers<br/>[serializer.py]"]
  node_order_processing["Order data processing<br/>[data_processing.py]"]
  node_payments["Payment API<br/>[views.py]"]
  node_payment_data[("Payment data<br/>[models.py]")]
  node_services["Services API<br/>[views.py]"]
  node_service_data[("Service data<br/>[models.py]")]
end

subgraph group_identity["Identity"]
  node_users["Account API<br/>[views.py]"]
  node_user_data[("Account data<br/>[models.py]")]
  node_authentication["JWT authentication<br/>[authenticate.py]"]
  node_user_serializers["Account serializers<br/>[serializer.py]"]
end

subgraph group_integrations["Storage and integrations"]
  node_database[("PostgreSQL")]
  node_image_service["Image upload service"]
  node_cloudinary["Cloudinary"]
end

node_customer(("Frontend client"))

node_customer -->|"sends API requests"| node_routing
node_routing -->|"uses root config"| node_settings
node_settings -->|"configures authentication"| node_authentication
node_settings -->|"configures database"| node_database
node_products -->|"queries and updates"| node_product_data
node_products -->|"serializes results"| node_product_serializers
node_products -->|"uploads images"| node_image_service
node_image_service -->|"uploads or deletes"| node_cloudinary
node_cart -->|"accesses cart records"| node_cart_data
node_orders -->|"creates and queries"| node_order_data
node_orders -->|"checks stock"| node_product_data
node_orders -->|"reads cart items"| node_cart_data
node_orders -->|"serializes orders"| node_order_serializers
node_orders -->|"serializes products"| node_product_serializers
node_orders -.->|"processing details uncertain"| node_order_processing
node_payments -->|"accesses payment records"| node_payment_data
node_services -->|"accesses service records"| node_service_data
node_users -->|"accesses accounts"| node_user_data
node_users -->|"serializes accounts"| node_user_serializers
node_authentication -->|"loads account"| node_user_data
node_product_data -->|"persists product state"| node_database
node_cart_data -->|"persists cart state"| node_database
node_order_data -->|"persists order state"| node_database
node_payment_data -->|"persists payment state"| node_database
node_service_data -->|"persists service state"| node_database
node_user_data -->|"persists account state"| node_database

click node_routing "https://github.com/hoannghi16/3dsolutions_backend/blob/main/core/urls.py"
click node_settings "https://github.com/hoannghi16/3dsolutions_backend/blob/main/core/settings.py"
click node_products "https://github.com/hoannghi16/3dsolutions_backend/blob/main/products_management/views.py"
click node_product_data "https://github.com/hoannghi16/3dsolutions_backend/blob/main/products_management/models.py"
click node_product_serializers "https://github.com/hoannghi16/3dsolutions_backend/blob/main/products_management/serializer.py"
click node_cart "https://github.com/hoannghi16/3dsolutions_backend/blob/main/carts_management/views.py"
click node_cart_data "https://github.com/hoannghi16/3dsolutions_backend/blob/main/carts_management/models.py"
click node_orders "https://github.com/hoannghi16/3dsolutions_backend/blob/main/orders_management/views.py"
click node_order_data "https://github.com/hoannghi16/3dsolutions_backend/blob/main/orders_management/models.py"
click node_order_serializers "https://github.com/hoannghi16/3dsolutions_backend/blob/main/orders_management/serializer.py"
click node_order_processing "https://github.com/hoannghi16/3dsolutions_backend/blob/main/orders_management/data_processing.py"
click node_payments "https://github.com/hoannghi16/3dsolutions_backend/blob/main/pay_management/views.py"
click node_payment_data "https://github.com/hoannghi16/3dsolutions_backend/blob/main/pay_management/models.py"
click node_services "https://github.com/hoannghi16/3dsolutions_backend/blob/main/services_management/views.py"
click node_service_data "https://github.com/hoannghi16/3dsolutions_backend/blob/main/services_management/models.py"
click node_users "https://github.com/hoannghi16/3dsolutions_backend/blob/main/users_management/views.py"
click node_user_data "https://github.com/hoannghi16/3dsolutions_backend/blob/main/users_management/models.py"
click node_authentication "https://github.com/hoannghi16/3dsolutions_backend/blob/main/users_management/authenticate.py"
click node_user_serializers "https://github.com/hoannghi16/3dsolutions_backend/blob/main/users_management/serializer.py"
click node_image_service "https://github.com/hoannghi16/3dsolutions_backend/blob/main/services_management/cloudinary_service.py"

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_routing,node_settings,node_customer toneBlue
class node_products,node_product_data,node_product_serializers,node_cart,node_cart_data,node_orders,node_order_data,node_order_serializers,node_order_processing,node_payments,node_payment_data,node_services,node_service_data toneAmber
class node_users,node_user_data,node_authentication,node_user_serializers toneMint
class node_database,node_image_service,node_cloudinary toneRose
```

## Components

### API runtime

- [Root URL config](https://github.com/hoannghi16/3dsolutions_backend/blob/main/core/urls.py): `core/urls.py`
- [Django settings](https://github.com/hoannghi16/3dsolutions_backend/blob/main/core/settings.py): `core/settings.py`

### Commerce domains

- [Product catalog](https://github.com/hoannghi16/3dsolutions_backend/blob/main/products_management/views.py): `products_management/views.py`
- [Product data](https://github.com/hoannghi16/3dsolutions_backend/blob/main/products_management/models.py): `products_management/models.py`
- [Product serializers](https://github.com/hoannghi16/3dsolutions_backend/blob/main/products_management/serializer.py): `products_management/serializer.py`
- [Cart API](https://github.com/hoannghi16/3dsolutions_backend/blob/main/carts_management/views.py): `carts_management/views.py`
- [Cart data](https://github.com/hoannghi16/3dsolutions_backend/blob/main/carts_management/models.py): `carts_management/models.py`
- [Order processing](https://github.com/hoannghi16/3dsolutions_backend/blob/main/orders_management/views.py): `orders_management/views.py`
- [Order data](https://github.com/hoannghi16/3dsolutions_backend/blob/main/orders_management/models.py): `orders_management/models.py`
- [Order serializers](https://github.com/hoannghi16/3dsolutions_backend/blob/main/orders_management/serializer.py): `orders_management/serializer.py`
- [Order data processing](https://github.com/hoannghi16/3dsolutions_backend/blob/main/orders_management/data_processing.py): `orders_management/data_processing.py`
- [Payment API](https://github.com/hoannghi16/3dsolutions_backend/blob/main/pay_management/views.py): `pay_management/views.py`
- [Payment data](https://github.com/hoannghi16/3dsolutions_backend/blob/main/pay_management/models.py): `pay_management/models.py`
- [Services API](https://github.com/hoannghi16/3dsolutions_backend/blob/main/services_management/views.py): `services_management/views.py`
- [Service data](https://github.com/hoannghi16/3dsolutions_backend/blob/main/services_management/models.py): `services_management/models.py`

### Identity

- [Account API](https://github.com/hoannghi16/3dsolutions_backend/blob/main/users_management/views.py): `users_management/views.py`
- [Account data](https://github.com/hoannghi16/3dsolutions_backend/blob/main/users_management/models.py): `users_management/models.py`
- [JWT authentication](https://github.com/hoannghi16/3dsolutions_backend/blob/main/users_management/authenticate.py): `users_management/authenticate.py`
- [Account serializers](https://github.com/hoannghi16/3dsolutions_backend/blob/main/users_management/serializer.py): `users_management/serializer.py`

### Storage and integrations

- **PostgreSQL**
- [Image upload service](https://github.com/hoannghi16/3dsolutions_backend/blob/main/services_management/cloudinary_service.py): `services_management/cloudinary_service.py`
- **Cloudinary**

### Other components

- **Frontend client**

## Connections

- Frontend client → Root URL config: sends API requests
- Root URL config → Django settings: uses root config
- Django settings → JWT authentication: configures authentication
- Django settings → PostgreSQL: configures database
- Product catalog → Product data: queries and updates
- Product catalog → Product serializers: serializes results
- Product catalog → Image upload service: uploads images
- Image upload service → Cloudinary: uploads or deletes
- Cart API → Cart data: accesses cart records
- Order processing → Order data: creates and queries
- Order processing → Product data: checks stock
- Order processing → Cart data: reads cart items
- Order processing → Order serializers: serializes orders
- Order processing → Product serializers: serializes products
- Order processing → Order data processing: processing details uncertain
- Payment API → Payment data: accesses payment records
- Services API → Service data: accesses service records
- Account API → Account data: accesses accounts
- Account API → Account serializers: serializes accounts
- JWT authentication → Account data: loads account
- Product data → PostgreSQL: persists product state
- Cart data → PostgreSQL: persists cart state
- Order data → PostgreSQL: persists order state
- Payment data → PostgreSQL: persists payment state
- Service data → PostgreSQL: persists service state
- Account data → PostgreSQL: persists account state
