https://github.com/tomnuttall/iot-temp-sensor
Demo Project: React Dashboard to view temperature readings sent from an IoT device.
https://github.com/tomnuttall/iot-temp-sensor
aws-apigateway aws-dynamodb aws-iot-core aws-lambda cpp esp32 react
Last synced: 2 months ago
JSON representation
Demo Project: React Dashboard to view temperature readings sent from an IoT device.
- Host: GitHub
- URL: https://github.com/tomnuttall/iot-temp-sensor
- Owner: TomNuttall
- License: mit
- Created: 2023-05-30T19:34:44.000Z (about 3 years ago)
- Default Branch: main
- Last Pushed: 2024-03-20T15:58:40.000Z (over 2 years ago)
- Last Synced: 2024-03-21T17:06:26.425Z (over 2 years ago)
- Topics: aws-apigateway, aws-dynamodb, aws-iot-core, aws-lambda, cpp, esp32, react
- Language: TypeScript
- Homepage:
- Size: 1.89 MB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# IoT Temp Sensor
IoT device with a temperature sensor sends readings that can then be viewed with a dashboard.
## Project Overview
### :sun_behind_small_cloud: Temperature Sensor
> :book: [Data Source Readme](/microcontroller/README.md)
- Esp32 microcontroller connected to a temperature sensor.
- Average Reading sent to AWS IoT Core and message added to DynamoDB table.
### 🛠️ AWS Backend
> :book: [Backend Readme](/backend/README.md)
- API Gateway with Lambda integration reads DynamoDB table and returns data.
### 📈 React Frontend
> :book: [Dashboard Readme](/dashboard/README.md)
- React dashboard consumes API with date picking.
- ChartJS used for graphs.
### :bricks: Infastructure
> :book: [Infastructure Readme](/infastructure/README.md)
- CloudFormation templates used to deploy AWS infastructure
- GitHub actions deploy dashboard to S3 bucket and backend lambda.
### :bricks: Local DB
> :book: [Local DB Readme](/local-db/README.md)
- Docker image for local DynamoDB tables.
## Run
1. Start up (and populate) local DynamoDB docker image
2. Start up local lambda and connect to local DynamoDB table
```
yarn dev:local-db
yarn dev:backend
```
3. Start frontend and connect to local backend.
```
yarn dev:dashboard
```