Overview
The Realtime IoT Dashboard is a remarkable web application that harnesses the power of AWS technologies to provide real-time updates from various IoT sensors. Developed with React and utilizing services like AWS AppSync, Amazon Location Service, and AWS IoT, this dashboard vividly illustrates the data collected from fictitious pH sensors deployed around the San Francisco Bay. Thanks to the recent update incorporating Amplify Gen2, users can now enjoy an even smoother experience while deploying backend services seamlessly on AWS.
The application features an intuitive dashboard where sensor data is visually represented through colored dots, each changing color based on their pH readings. This dynamic visualization, combined with a robust backend architecture, allows users to track and understand sensor performance in real-time efficiently.
Features
- Real-time Updates: The dashboard receives instantaneous updates from IoT sensors, allowing users to monitor data as it changes.
- AWS Technologies: Built using AWS AppSync, Amazon Location Service, and other AWS tools, ensuring a robust and scalable solution.
- Dynamic Visualization: Sensors are represented as colored dots that change hues based on their readings, providing an easy-to-understand visual cue for conditions.
- User Authentication with Cognito: Utilizes Amazon Cognito for secure user authentication, ensuring that only authorized users can access the dashboard and perform subscriptions.
- GraphQL Integration: Leveraging GraphQL mutations through a Node.js Lambda function, facilitating efficient data saving and updates in DynamoDB.
- Geolocation Tracking: Each sensor’s geolocation is stored and visualized on an interactive map, providing users with essential location context.
- Sensor Simulator: The application includes an IoT sensor simulator to aid in testing and development, allowing users to create and deploy sensors in AWS IoT Core.
- Comprehensive Setup Guide: A thorough installation guide ensures users can set up the application with minimal effort, detailing prerequisites and deployment steps.