|
| 1 | +flowchart TB |
| 2 | + %% --- Clients --- |
| 3 | + Portal[💻 Integration Portal<br/>]:::client |
| 4 | + |
| 5 | + |
| 6 | + %% --- SDKs --- |
| 7 | + UM_SDK[📦 UserManagement.SDK]:::sdk |
| 8 | + LOG_SDK[📦 CentralizedLogging.SDK]:::sdk |
| 9 | + |
| 10 | + %% --- APIs --- |
| 11 | + UM_API[🔑 User Management API]:::api |
| 12 | + LOG_API[📝 Centralized Logging API]:::api |
| 13 | + |
| 14 | + %% --- Contracts --- |
| 15 | + UM_CONTRACTS[📄 UserManagement.Contracts]:::contract |
| 16 | + LOG_CONTRACTS[📄 Logging.Contracts]:::contract |
| 17 | + |
| 18 | + %% --- Databases --- |
| 19 | + UDB[(🗄️ User DB)]:::db |
| 20 | + LDB[(🗄️ Logging DB)]:::db |
| 21 | + |
| 22 | + %% --- Flows --- |
| 23 | + %% Clients use SDKs |
| 24 | + Portal --> UM_SDK --> UM_API |
| 25 | + Portal --> LOG_SDK --> LOG_API |
| 26 | + |
| 27 | + %% SDKs depend on contracts |
| 28 | + UM_SDK -.-> UM_CONTRACTS |
| 29 | + LOG_SDK -.-> LOG_CONTRACTS |
| 30 | + |
| 31 | + %% APIs also follow contracts |
| 32 | + UM_API -.-> UM_CONTRACTS |
| 33 | + LOG_API -.-> LOG_CONTRACTS |
| 34 | + |
| 35 | + %% APIs use DBs |
| 36 | + UM_API --> UDB |
| 37 | + LOG_API --> LDB |
| 38 | + |
| 39 | + %% --- Legend --- |
| 40 | + subgraph Legend |
| 41 | + L1[💻 Client]:::client |
| 42 | + L2[📦 SDK]:::sdk |
| 43 | + L3[🔑 API]:::api |
| 44 | + L4[📄 Contract]:::contract |
| 45 | + L5[(🗄️ DB)]:::db |
| 46 | + end |
| 47 | + |
| 48 | + %% --- Styles --- |
| 49 | + classDef client fill:#f0f8ff,stroke:#007acc,stroke-width:2px,color:#000,font-weight:bold; |
| 50 | + classDef sdk fill:#fff5e6,stroke:#ff9900,stroke-width:2px,color:#000; |
| 51 | + classDef api fill:#e6ffe6,stroke:#339933,stroke-width:2px,color:#000; |
| 52 | + classDef contract fill:#f9f9f9,stroke:#555555,stroke-dasharray: 3 3,color:#000; |
| 53 | + classDef db fill:#fff0f5,stroke:#cc0066,stroke-width:2px,color:#000; |
0 commit comments