On the front end we used React as a web client to connect to the Ethereum Blockchain to substitute the server application, which exists solely to keep the continuous, uninterrupted, and immutable state machine. It then goes down to Chainlink, feeding Ethereum the off-grid data it requires to create consensus using logic that is hard-coded for everyone to see and agree upon, which are Smart Contracts. Because our application is unique to our specifications, we had to develop custom NodeJS services that help handle data stored on MongoDB, using BigchainDB with the help of Tendermint.