Putting together such a varied solution requires many different languages.
The android application
The android application utilizes both Java and Kotlin in order to draw the application and communicate with the cloud. Kotlin is the preferred language, though some useful Java libraries do not have counterparts in Kotlin.
The cloud API
Our cloud solution uses C# to receive and send data.
The raspberry pi (guard dog)
Node.js is used to control the camera and transmit to the cloud.
The arduino (guard dog)
C++ is used to read from the sensors and activate the microcontrollers.
