%% Autogenerated docker-compose-dev
graph TD
classDef standard fill:#1e293b,stroke:#38bdf8,stroke-width:1px,color:#e5e7eb;
classDef c-actor fill:#1e293b,stroke:#e5e7eb,stroke-width:1px,stroke-dasharray: 5 5,color:#e5e7eb;
classDef c-compute fill:#422006,stroke:#fb923c,stroke-width:1px,color:#fed7aa;
classDef c-database fill:#064e3b,stroke:#34d399,stroke-width:1px,color:#d1fae5;
classDef c-network fill:#2e1065,stroke:#a855f7,stroke-width:1px,color:#f3e8ff;
classDef c-storage fill:#450a0a,stroke:#f87171,stroke-width:1px,color:#fee2e2;
classDef c-security fill:#450a0a,stroke:#f87171,stroke-width:1px,color:#fee2e2;
classDef c-gateway fill:#2e1065,stroke:#a855f7,stroke-width:1px,color:#f3e8ff;
classDef c-container fill:#422006,stroke:#facc15,stroke-width:1px,color:#fef9c3;
subgraph app_containers ["Application Containers"]
direction TB
nginx(("<img src="/icons/inframap/edge.png" width="32" height="32" /><br/><b>Nginx</b><br/><i>gateway</i><br/><span style='font-size:0.8em'>Reverse proxy</span>"))
class nginx c-network
frontend("<img src="/icons/inframap/compute.png" width="32" height="32" /><br/><b>Frontend Container</b><br/><i>service</i><br/><span style='font-size:0.8em'>React/Vue dev server</span>")
class frontend c-compute
backend("<img src="/icons/inframap/compute.png" width="32" height="32" /><br/><b>Backend Container</b><br/><i>service</i><br/><span style='font-size:0.8em'>API server</span>")
class backend c-compute
worker("<img src="/icons/inframap/compute.png" width="32" height="32" /><br/><b>Worker Container</b><br/><i>service</i><br/><span style='font-size:0.8em'>Background jobs</span>")
class worker c-compute
end
subgraph data_containers ["Data Containers"]
direction TB
postgres[("<img src="/icons/inframap/database.png" width="32" height="32" /><br/><b>PostgreSQL</b><br/><i>database</i><br/><span style='font-size:0.8em'>Database container</span>")]
class postgres c-database
redis[("<img src="/icons/inframap/database.png" width="32" height="32" /><br/><b>Redis</b><br/><i>database</i><br/><span style='font-size:0.8em'>Cache container</span>")]
class redis c-database
volumes[("<img src="/icons/inframap/database.png" width="32" height="32" /><br/><b>Docker Volumes</b><br/><i>database</i><br/><span style='font-size:0.8em'>Persistent data</span>")]
class volumes c-database
end
%% Orphans
developer(("<img src="/icons/inframap/user.png" width="32" height="32" /><br/><b>Developer</b><br/><i>actor</i><br/><span style='font-size:0.8em'>Local machine</span>"))
class developer c-actor
%% Edges
developer -.-> nginx
nginx -.-> frontend
nginx -.-> backend
frontend -.-> backend
backend -.-> postgres
backend -.-> redis
worker -.-> postgres
worker -.-> redis