# michaelrobotics/kubernetes architecture

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

## Overview

This tree is a collection of Kubernetes and observability examples, not one unified application. Its largest product example is the OpenTelemetry microservices demo, which presents a storefront alongside independently implemented services and observability-focused features. The tree supports identifying these domains, but the README is empty and most service implementations were not sampled; accordingly, the graph avoids asserting unverified service-to-service calls. The sampled ad service does confirm a gRPC server and a flagd-backed feature-flag provider.

Main entry points: [`opentelemetry-demo/src/ad/src/main/java/oteldemo/AdService.java`](https://github.com/michaelrobotics/kubernetes/blob/main/opentelemetry-demo/src/ad/src/main/java/oteldemo/AdService.java) (Ad service), [`opentelemetry-demo/src/frontend/pages/index.tsx`](https://github.com/michaelrobotics/kubernetes/blob/main/opentelemetry-demo/src/frontend/pages/index.tsx) (Storefront UI)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_storefront["Storefront Demo"]
  node_frontend["Storefront UI<br/>[index.tsx]"]
end

subgraph group_commerce["Commerce Services"]
  node_cart["Cart service<br/>[Program.cs]"]
  node_catalog["Product catalog<br/>[main.go]"]
  node_checkout["Checkout<br/>[main.go]"]
  node_payment["Payment<br/>[index.js]"]
  node_shipping["Shipping<br/>[main.rs]"]
  node_currency["Currency<br/>[server.cpp]"]
  node_recommendation["Recommendations"]
  node_ad["Ad service<br/>[AdService.java]"]
  node_fraud["Fraud detection<br/>[main.kt]"]
  node_accounting["Accounting consumer<br/>[Program.cs]"]
  node_user["User management<br/>[main.go]"]
  node_email["Email service<br/>[email_server.rb]"]
  node_quote["Quote service<br/>[index.php]"]
  node_db["Postgres access<br/>[connection.go]"]
end

subgraph group_platform["Demo Platform"]
  node_flagui["Feature-flag UI<br/>[page.tsx]"]
  node_flagd["flagd provider"]
  node_kafka["Kafka"]
  node_valkey[("Valkey")]
end

subgraph group_kube["Kubernetes Examples"]
  node_eks["Container examples<br/>[python.py]"]
  node_nodebackend["Node task API<br/>[index.js]"]
  node_nodefrontend["Node task UI<br/>[App.js]"]
  node_ingress["Flask ingress app<br/>[app.py]"]
  node_keda["KEDA load scripts<br/>[k6.js]"]
  node_podtracker["Pod tracker"]
  node_metacontroller["Metacontroller app<br/>[main.go]"]
  node_graceful["Termination examples<br/>[main.go]"]
end

node_shopper(("Shopper"))

node_shopper -->|"uses"| node_frontend
node_ad -.->|"sets provider"| node_flagd

click node_frontend "https://github.com/michaelrobotics/kubernetes/blob/main/opentelemetry-demo/src/frontend/pages/index.tsx"
click node_cart "https://github.com/michaelrobotics/kubernetes/blob/main/opentelemetry-demo/src/cart/src/Program.cs"
click node_catalog "https://github.com/michaelrobotics/kubernetes/blob/main/opentelemetry-demo/src/product-catalog/main.go"
click node_checkout "https://github.com/michaelrobotics/kubernetes/blob/main/opentelemetry-demo/src/checkout/main.go"
click node_payment "https://github.com/michaelrobotics/kubernetes/blob/main/opentelemetry-demo/src/payment/index.js"
click node_shipping "https://github.com/michaelrobotics/kubernetes/blob/main/opentelemetry-demo/src/shipping/src/main.rs"
click node_currency "https://github.com/michaelrobotics/kubernetes/blob/main/opentelemetry-demo/src/currency/src/server.cpp"
click node_recommendation "https://github.com/michaelrobotics/kubernetes/blob/main/opentelemetry-demo/src/recommendation/recommendation_server.py"
click node_ad "https://github.com/michaelrobotics/kubernetes/blob/main/opentelemetry-demo/src/ad/src/main/java/oteldemo/AdService.java"
click node_fraud "https://github.com/michaelrobotics/kubernetes/blob/main/opentelemetry-demo/src/fraud-detection/src/main/kotlin/frauddetection/main.kt"
click node_accounting "https://github.com/michaelrobotics/kubernetes/blob/main/opentelemetry-demo/src/accounting/Program.cs"
click node_user "https://github.com/michaelrobotics/kubernetes/blob/main/opentelemetry-demo/src/usermanagementservice/main.go"
click node_email "https://github.com/michaelrobotics/kubernetes/blob/main/opentelemetry-demo/src/email/email_server.rb"
click node_quote "https://github.com/michaelrobotics/kubernetes/blob/main/opentelemetry-demo/src/quote/public/index.php"
click node_db "https://github.com/michaelrobotics/kubernetes/blob/main/opentelemetry-demo/src/db/postgres/connection.go"
click node_flagui "https://github.com/michaelrobotics/kubernetes/blob/main/opentelemetry-demo/src/flagd-ui/src/app/page.tsx"
click node_eks "https://github.com/michaelrobotics/kubernetes/blob/main/EKSContainers/python.py"
click node_nodebackend "https://github.com/michaelrobotics/kubernetes/blob/main/EKSNodejs/Backend/index.js"
click node_nodefrontend "https://github.com/michaelrobotics/kubernetes/blob/main/EKSNodejs/Frontend/src/App.js"
click node_ingress "https://github.com/michaelrobotics/kubernetes/blob/main/Ingress/Flask/app.py"
click node_keda "https://github.com/michaelrobotics/kubernetes/blob/main/KEDA/k6.js"
click node_podtracker "https://github.com/michaelrobotics/kubernetes/blob/main/Kubebuilder/podtracker_controller.go"
click node_metacontroller "https://github.com/michaelrobotics/kubernetes/blob/main/Metacontroller/main.go"
click node_graceful "https://github.com/michaelrobotics/kubernetes/blob/main/Sigterm/goapp/main.go"

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_frontend toneBlue
class node_cart,node_catalog,node_checkout,node_payment,node_shipping,node_currency,node_recommendation,node_ad,node_fraud,node_accounting,node_user,node_email,node_quote,node_db toneAmber
class node_flagui,node_flagd,node_kafka,node_valkey toneMint
class node_eks,node_nodebackend,node_nodefrontend,node_ingress,node_keda,node_podtracker,node_metacontroller,node_graceful toneRose
class node_shopper toneIndigo
```

## Components

### Storefront Demo

- [Storefront UI](https://github.com/michaelrobotics/kubernetes/blob/main/opentelemetry-demo/src/frontend/pages/index.tsx): `opentelemetry-demo/src/frontend/pages/index.tsx`

### Commerce Services

- [Cart service](https://github.com/michaelrobotics/kubernetes/blob/main/opentelemetry-demo/src/cart/src/Program.cs): `opentelemetry-demo/src/cart/src/Program.cs`
- [Product catalog](https://github.com/michaelrobotics/kubernetes/blob/main/opentelemetry-demo/src/product-catalog/main.go): `opentelemetry-demo/src/product-catalog/main.go`
- [Checkout](https://github.com/michaelrobotics/kubernetes/blob/main/opentelemetry-demo/src/checkout/main.go): `opentelemetry-demo/src/checkout/main.go`
- [Payment](https://github.com/michaelrobotics/kubernetes/blob/main/opentelemetry-demo/src/payment/index.js): `opentelemetry-demo/src/payment/index.js`
- [Shipping](https://github.com/michaelrobotics/kubernetes/blob/main/opentelemetry-demo/src/shipping/src/main.rs): `opentelemetry-demo/src/shipping/src/main.rs`
- [Currency](https://github.com/michaelrobotics/kubernetes/blob/main/opentelemetry-demo/src/currency/src/server.cpp): `opentelemetry-demo/src/currency/src/server.cpp`
- [Recommendations](https://github.com/michaelrobotics/kubernetes/blob/main/opentelemetry-demo/src/recommendation/recommendation_server.py): `opentelemetry-demo/src/recommendation/recommendation_server.py`
- [Ad service](https://github.com/michaelrobotics/kubernetes/blob/main/opentelemetry-demo/src/ad/src/main/java/oteldemo/AdService.java): `opentelemetry-demo/src/ad/src/main/java/oteldemo/AdService.java`
- [Fraud detection](https://github.com/michaelrobotics/kubernetes/blob/main/opentelemetry-demo/src/fraud-detection/src/main/kotlin/frauddetection/main.kt): `opentelemetry-demo/src/fraud-detection/src/main/kotlin/frauddetection/main.kt`
- [Accounting consumer](https://github.com/michaelrobotics/kubernetes/blob/main/opentelemetry-demo/src/accounting/Program.cs): `opentelemetry-demo/src/accounting/Program.cs`
- [User management](https://github.com/michaelrobotics/kubernetes/blob/main/opentelemetry-demo/src/usermanagementservice/main.go): `opentelemetry-demo/src/usermanagementservice/main.go`
- [Email service](https://github.com/michaelrobotics/kubernetes/blob/main/opentelemetry-demo/src/email/email_server.rb): `opentelemetry-demo/src/email/email_server.rb`
- [Quote service](https://github.com/michaelrobotics/kubernetes/blob/main/opentelemetry-demo/src/quote/public/index.php): `opentelemetry-demo/src/quote/public/index.php`
- [Postgres access](https://github.com/michaelrobotics/kubernetes/blob/main/opentelemetry-demo/src/db/postgres/connection.go): `opentelemetry-demo/src/db/postgres/connection.go`

### Demo Platform

- [Feature-flag UI](https://github.com/michaelrobotics/kubernetes/blob/main/opentelemetry-demo/src/flagd-ui/src/app/page.tsx): `opentelemetry-demo/src/flagd-ui/src/app/page.tsx`
- **flagd provider**
- **Kafka**
- **Valkey**

### Kubernetes Examples

- [Container examples](https://github.com/michaelrobotics/kubernetes/blob/main/EKSContainers/python.py): `EKSContainers/python.py`
- [Node task API](https://github.com/michaelrobotics/kubernetes/blob/main/EKSNodejs/Backend/index.js): `EKSNodejs/Backend/index.js`
- [Node task UI](https://github.com/michaelrobotics/kubernetes/blob/main/EKSNodejs/Frontend/src/App.js): `EKSNodejs/Frontend/src/App.js`
- [Flask ingress app](https://github.com/michaelrobotics/kubernetes/blob/main/Ingress/Flask/app.py): `Ingress/Flask/app.py`
- [KEDA load scripts](https://github.com/michaelrobotics/kubernetes/blob/main/KEDA/k6.js): `KEDA/k6.js`
- [Pod tracker](https://github.com/michaelrobotics/kubernetes/blob/main/Kubebuilder/podtracker_controller.go): `Kubebuilder/podtracker_controller.go`
- [Metacontroller app](https://github.com/michaelrobotics/kubernetes/blob/main/Metacontroller/main.go): `Metacontroller/main.go`
- [Termination examples](https://github.com/michaelrobotics/kubernetes/blob/main/Sigterm/goapp/main.go): `Sigterm/goapp/main.go`

### Other components

- **Shopper**

## Connections

- Shopper → Storefront UI: uses
- Ad service → flagd provider: sets provider
