# luizdev1/nkg-dos-importados architecture

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

- Interactive diagram: https://gitdiagram.com/luizdev1/nkg-dos-importados
- Repository: https://github.com/luizdev1/nkg-dos-importados

## Overview

NKG dos Importados é uma loja virtual com frontend React e backend Node/Express, e a árvore indica fluxos de catálogo, carrinho, checkout, pagamento e administração de pedidos, produtos e relatórios. A estrutura também prevê autenticação e gestão de estoque. As páginas e módulos representam esses estágios, mas seus arquivos não foram amostrados; por isso, não afirmo chamadas entre eles. O código disponível confirma apenas a renderização inicial do frontend e uma consulta de saúde do banco pelo backend.

Main entry points: [`backend/src/config/banco.js`](https://github.com/luizdev1/nkg-dos-importados/blob/main/backend/src/config/banco.js) (Configuração banco), [`frontend/src/main.jsx`](https://github.com/luizdev1/nkg-dos-importados/blob/main/frontend/src/main.jsx) (Inicialização React), [`backend/src/app.js`](https://github.com/luizdev1/nkg-dos-importados/blob/main/backend/src/app.js) (Servidor Express), [`frontend/src/App.jsx`](https://github.com/luizdev1/nkg-dos-importados/blob/main/frontend/src/App.jsx) (Aplicação)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_frontend["Loja frontend"]
  node_main["Inicialização React<br/>[main.jsx]"]
  node_app_ui["Aplicação<br/>[App.jsx]"]
  node_home["Página inicial<br/>[Home.jsx]"]
  node_product_detail["Detalhe produto<br/>[DetalheProduto.jsx]"]
  node_cart["Carrinho<br/>[Carrinho.jsx]"]
  node_checkout["Checkout<br/>[Checkout.jsx]"]
  node_auth_context["Autenticação"]
  node_cart_context["Estado carrinho"]
  node_api_client["Cliente API<br/>[api.js]"]
  node_admin_panel["Painel admin<br/>[Painel.jsx]"]
  node_admin_products["Produtos admin<br/>[Produtos.jsx]"]
  node_admin_orders["Pedidos admin<br/>[Pedidos.jsx]"]
  node_admin_reports["Relatórios<br/>[Relatorios.jsx]"]
end

subgraph group_backend["Serviços backend"]
  node_server["Servidor Express<br/>[app.js]"]
  node_auth_routes["Rotas autenticação"]
  node_product_routes["Rotas produtos<br/>[produtoRoutes.js]"]
  node_order_routes["Rotas pedidos<br/>[pedidoRoutes.js]"]
  node_payment_routes["Rotas pagamento<br/>[pagamentoRoutes.js]"]
  node_report_routes["Rotas relatórios<br/>[relatorioRoutes.js]"]
  node_auth_controller["Autenticação"]
  node_product_controller["Produtos"]
  node_order_controller["Pedidos"]
  node_payment_controller["Pagamentos"]
  node_report_controller["Relatórios"]
end

subgraph group_domain["Domínio e dados"]
  node_inventory["Gestão estoque<br/>[estoqueService.js]"]
  node_payment_service["Integração Mercado Pago"]
  node_mysql_config["Configuração banco<br/>[banco.js]"]
end

node_shopper(("Cliente"))
node_admin(("Administrador"))
node_mysql[("MySQL")]

node_main -->|"renderiza"| node_app_ui
node_server -->|"consulta saúde"| node_mysql_config
node_mysql_config -->|"acessa"| node_mysql

click node_main "https://github.com/luizdev1/nkg-dos-importados/blob/main/frontend/src/main.jsx"
click node_app_ui "https://github.com/luizdev1/nkg-dos-importados/blob/main/frontend/src/App.jsx"
click node_home "https://github.com/luizdev1/nkg-dos-importados/blob/main/frontend/src/paginas/publicas/Home.jsx"
click node_product_detail "https://github.com/luizdev1/nkg-dos-importados/blob/main/frontend/src/paginas/publicas/DetalheProduto.jsx"
click node_cart "https://github.com/luizdev1/nkg-dos-importados/blob/main/frontend/src/paginas/publicas/Carrinho.jsx"
click node_checkout "https://github.com/luizdev1/nkg-dos-importados/blob/main/frontend/src/paginas/publicas/Checkout.jsx"
click node_auth_context "https://github.com/luizdev1/nkg-dos-importados/blob/main/frontend/src/contextos/ContextoAutenticacao.jsx"
click node_cart_context "https://github.com/luizdev1/nkg-dos-importados/blob/main/frontend/src/contextos/ContextoCarrinho.jsx"
click node_api_client "https://github.com/luizdev1/nkg-dos-importados/blob/main/frontend/src/servicos/api.js"
click node_admin_panel "https://github.com/luizdev1/nkg-dos-importados/blob/main/frontend/src/paginas/admin/Painel.jsx"
click node_admin_products "https://github.com/luizdev1/nkg-dos-importados/blob/main/frontend/src/paginas/admin/Produtos.jsx"
click node_admin_orders "https://github.com/luizdev1/nkg-dos-importados/blob/main/frontend/src/paginas/admin/Pedidos.jsx"
click node_admin_reports "https://github.com/luizdev1/nkg-dos-importados/blob/main/frontend/src/paginas/admin/Relatorios.jsx"
click node_server "https://github.com/luizdev1/nkg-dos-importados/blob/main/backend/src/app.js"
click node_auth_routes "https://github.com/luizdev1/nkg-dos-importados/blob/main/backend/src/routes/autenticacaoRoutes.js"
click node_product_routes "https://github.com/luizdev1/nkg-dos-importados/blob/main/backend/src/routes/produtoRoutes.js"
click node_order_routes "https://github.com/luizdev1/nkg-dos-importados/blob/main/backend/src/routes/pedidoRoutes.js"
click node_payment_routes "https://github.com/luizdev1/nkg-dos-importados/blob/main/backend/src/routes/pagamentoRoutes.js"
click node_report_routes "https://github.com/luizdev1/nkg-dos-importados/blob/main/backend/src/routes/relatorioRoutes.js"
click node_auth_controller "https://github.com/luizdev1/nkg-dos-importados/blob/main/backend/src/controllers/autenticacaoController.js"
click node_product_controller "https://github.com/luizdev1/nkg-dos-importados/blob/main/backend/src/controllers/produtoController.js"
click node_order_controller "https://github.com/luizdev1/nkg-dos-importados/blob/main/backend/src/controllers/pedidoController.js"
click node_payment_controller "https://github.com/luizdev1/nkg-dos-importados/blob/main/backend/src/controllers/pagamentoController.js"
click node_report_controller "https://github.com/luizdev1/nkg-dos-importados/blob/main/backend/src/controllers/relatorioController.js"
click node_inventory "https://github.com/luizdev1/nkg-dos-importados/blob/main/backend/src/services/estoqueService.js"
click node_payment_service "https://github.com/luizdev1/nkg-dos-importados/blob/main/backend/src/services/mercadoPagoService.js"
click node_mysql_config "https://github.com/luizdev1/nkg-dos-importados/blob/main/backend/src/config/banco.js"

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_main,node_app_ui,node_home,node_product_detail,node_cart,node_checkout,node_auth_context,node_cart_context,node_api_client,node_admin_panel,node_admin_products,node_admin_orders,node_admin_reports,node_shopper toneBlue
class node_server,node_auth_routes,node_product_routes,node_order_routes,node_payment_routes,node_report_routes,node_auth_controller,node_product_controller,node_order_controller,node_payment_controller,node_report_controller,node_mysql toneAmber
class node_inventory,node_payment_service,node_mysql_config toneMint
class node_admin toneIndigo
```

## Components

### Loja frontend

- [Inicialização React](https://github.com/luizdev1/nkg-dos-importados/blob/main/frontend/src/main.jsx): `frontend/src/main.jsx`
- [Aplicação](https://github.com/luizdev1/nkg-dos-importados/blob/main/frontend/src/App.jsx): `frontend/src/App.jsx`
- [Página inicial](https://github.com/luizdev1/nkg-dos-importados/blob/main/frontend/src/paginas/publicas/Home.jsx): `frontend/src/paginas/publicas/Home.jsx`
- [Detalhe produto](https://github.com/luizdev1/nkg-dos-importados/blob/main/frontend/src/paginas/publicas/DetalheProduto.jsx): `frontend/src/paginas/publicas/DetalheProduto.jsx`
- [Carrinho](https://github.com/luizdev1/nkg-dos-importados/blob/main/frontend/src/paginas/publicas/Carrinho.jsx): `frontend/src/paginas/publicas/Carrinho.jsx`
- [Checkout](https://github.com/luizdev1/nkg-dos-importados/blob/main/frontend/src/paginas/publicas/Checkout.jsx): `frontend/src/paginas/publicas/Checkout.jsx`
- [Autenticação](https://github.com/luizdev1/nkg-dos-importados/blob/main/frontend/src/contextos/ContextoAutenticacao.jsx): `frontend/src/contextos/ContextoAutenticacao.jsx`
- [Estado carrinho](https://github.com/luizdev1/nkg-dos-importados/blob/main/frontend/src/contextos/ContextoCarrinho.jsx): `frontend/src/contextos/ContextoCarrinho.jsx`
- [Cliente API](https://github.com/luizdev1/nkg-dos-importados/blob/main/frontend/src/servicos/api.js): `frontend/src/servicos/api.js`
- [Painel admin](https://github.com/luizdev1/nkg-dos-importados/blob/main/frontend/src/paginas/admin/Painel.jsx): `frontend/src/paginas/admin/Painel.jsx`
- [Produtos admin](https://github.com/luizdev1/nkg-dos-importados/blob/main/frontend/src/paginas/admin/Produtos.jsx): `frontend/src/paginas/admin/Produtos.jsx`
- [Pedidos admin](https://github.com/luizdev1/nkg-dos-importados/blob/main/frontend/src/paginas/admin/Pedidos.jsx): `frontend/src/paginas/admin/Pedidos.jsx`
- [Relatórios](https://github.com/luizdev1/nkg-dos-importados/blob/main/frontend/src/paginas/admin/Relatorios.jsx): `frontend/src/paginas/admin/Relatorios.jsx`

### Serviços backend

- [Servidor Express](https://github.com/luizdev1/nkg-dos-importados/blob/main/backend/src/app.js): `backend/src/app.js`
- [Rotas autenticação](https://github.com/luizdev1/nkg-dos-importados/blob/main/backend/src/routes/autenticacaoRoutes.js): `backend/src/routes/autenticacaoRoutes.js`
- [Rotas produtos](https://github.com/luizdev1/nkg-dos-importados/blob/main/backend/src/routes/produtoRoutes.js): `backend/src/routes/produtoRoutes.js`
- [Rotas pedidos](https://github.com/luizdev1/nkg-dos-importados/blob/main/backend/src/routes/pedidoRoutes.js): `backend/src/routes/pedidoRoutes.js`
- [Rotas pagamento](https://github.com/luizdev1/nkg-dos-importados/blob/main/backend/src/routes/pagamentoRoutes.js): `backend/src/routes/pagamentoRoutes.js`
- [Rotas relatórios](https://github.com/luizdev1/nkg-dos-importados/blob/main/backend/src/routes/relatorioRoutes.js): `backend/src/routes/relatorioRoutes.js`
- [Autenticação](https://github.com/luizdev1/nkg-dos-importados/blob/main/backend/src/controllers/autenticacaoController.js): `backend/src/controllers/autenticacaoController.js`
- [Produtos](https://github.com/luizdev1/nkg-dos-importados/blob/main/backend/src/controllers/produtoController.js): `backend/src/controllers/produtoController.js`
- [Pedidos](https://github.com/luizdev1/nkg-dos-importados/blob/main/backend/src/controllers/pedidoController.js): `backend/src/controllers/pedidoController.js`
- [Pagamentos](https://github.com/luizdev1/nkg-dos-importados/blob/main/backend/src/controllers/pagamentoController.js): `backend/src/controllers/pagamentoController.js`
- [Relatórios](https://github.com/luizdev1/nkg-dos-importados/blob/main/backend/src/controllers/relatorioController.js): `backend/src/controllers/relatorioController.js`

### Domínio e dados

- [Gestão estoque](https://github.com/luizdev1/nkg-dos-importados/blob/main/backend/src/services/estoqueService.js): `backend/src/services/estoqueService.js`
- [Integração Mercado Pago](https://github.com/luizdev1/nkg-dos-importados/blob/main/backend/src/services/mercadoPagoService.js): `backend/src/services/mercadoPagoService.js`
- [Configuração banco](https://github.com/luizdev1/nkg-dos-importados/blob/main/backend/src/config/banco.js): `backend/src/config/banco.js`

### Other components

- **Cliente**
- **Administrador**
- **MySQL**

## Connections

- Inicialização React → Aplicação: renderiza
- Servidor Express → Configuração banco: consulta saúde
- Configuração banco → MySQL: acessa
