The application allows a user to create an account and/or log into the system. Upon access, the user can view their dashboard, which shows details of their energy usage at given time intervals. The dashboard provides a clear, interactive interface, which updates in real-time whenever new data is detected. The user can add or delete energy monitors, add alerts, and update their account details. The purpose of this application is to simulate an Internet of Things (IoT) application, which uses sensors to detect data and send this data to the user.
The project was created using the MEAN stack (MongoDB, Express, Angular and Nodejs), and follows the MVC architecture paradigm. The project also makes use of other technologies, such as socket.io for displaying data in real-time, and chartjs, for visualising said data, and JSON Web Tokens for user authentication.
The client side code for this application is in a seperate repo, and can be found here: [https://github.com/katiemdev/energy-app-client-side]
The full design and test specification for this project is available on request.


