Expected completion time: a few hours
Preferred languages are Node.js and ReactJS
Build an application allowing anyone to view on a map the real-time state and position of our drivers in a geographical zone.
The states are read from the RabbitMQ exchange drivers
with the routing key drivers.update
. Their anatomy is:
{
"id": "{string} [DRIVER_ID]",
"state": "(available|ride|...)",
"position": [ "{number} latitude", "{number} longitude" ]
}
The RabbitMQ connection string is: amqp://guest:guest@localhost:5672.
The rest is up to you :)
The front application must display in real-time on a map the states and the positions of all the drivers in the current geographical zone. The zoom and the pan must be available. The total number of drivers in the zone must be displayed.
Read the following section to start the drivers' states emission worker. This will initialize the RabbitMQ server as well as the states producer you will consume for your application.