Essa aplicação simula dispositivos LoraWan, voltadas ao monitoramento de sinais vitais em real time dos usuários. Essa é só uma das inúmeras possibilidades da IoT ⚡.
Este repositório contém dois projetos, Client front-end e Server api back-end WebSockets. No client criei um gerenciador de estado com context API, e um hook personalizado que pode ser utilizado em toda aplicação, contendo os seguintes dados:
- isConnected : Estado que contem um Boolean que diz se a aplicação esta conectada com serviço websocket ou não.
- nameCharts : Objeto no qual as props contém o nome dos tipos de dados que serão plotados nos gráficos.
- watchlifeDevice, livesimpleDevice, healthyesDevice : Estados com a estrutura de três dispositivos já prontas da API, que são atualizadas a cada 10 segundos.
- idSocket : Contém o ID do socket conectado.
- error : Caso ocorra algum erro, conseguimos visualizar através dessa variável.
Através desses dados, criei as funcionalidades, animações e layout do Dashboard.
Foram realizados testes unitários nos seguintes components:
[x] Header
[x] Button Switcher
[x] ColorMode Page
[x] Change Connection Button
Para executar os testes:
yarn test
Faça o clone do projeto e instale as dependências do Client e Server individualmente, ou basta executar os códigos abaixo:
1- Irá realizar o clone e instalar as dependências do Server :
git clone https://github.com/gabriel-durr/proiot-challenge.git && cd proiot-challenge/server && yarn
2- Após finalizar. Insira essa nova linha para instalar as dependências do Client:
cd .. && cd client && yarn
3- Abra cada projeto (Client e Server), e enicie o server no terminal:
Client
yarn start
Server
yarn dev
ApexCharts é uma biblioteca de gráficos moderna que ajuda... Learn More.
Socket.IO é uma biblioteca que permite baixa-latência, bidirecional e baseado em eventos de comunicação entre cliente e um servidor... Learn More
|