@startuml
'https://plantuml.com/deployment-diagram

node "User Client" <<Device>> as UserClient {
 component "Web Browser" as Browser {
 }
}

    node "App System" <<Docker Compose>> as Docker {
                 component Backend as NestJS {
                 }
                 database Cache {
                 }

                  component RabbitMQ {
                  }
                  component "Processing and Storage Unit" as proc{

                  }
                  database Database {
                  }
                component Collecteurs {
                }
                component Frontend {
                }
    }

cloud "Api Keolis" <<API>> as keo{
}

cloud "MapBox Service" <<API>> as map{

}

Browser #--# Frontend : HTTPS:3000
Frontend #--# NestJS : HTTPS:3500
Frontend #--# NestJS : WS:4000
RabbitMQ #--# NestJS : AMQP:5672
RabbitMQ #--# proc : AMQP:5672
Collecteurs #--# RabbitMQ : AMQP:5672
proc #--# Database
NestJS #--# Cache
Collecteurs <--> keo : HTTPS
Frontend <--> map : HTTPS
@enduml