Skip to content

API Rest desenvolvida em Nest.js. Responsável por gerenciar dispositivos IoT, permitindo a criação, leitura, atualização e remoção de dispositivos.

Notifications You must be signed in to change notification settings

dev-luizf/device-manager

Repository files navigation

Device Manager

Essa API Rest desenvolvida em Nest.js é responsável por gerenciar dispositivos IoT, permitindo a criação, leitura, atualização e remoção de dispositivos. Além disso, a API implementa um Websocket para emitir uma mensagem toda vez que um dispositivo for criado ou atualizado.

Os testes foram desenvolvidos utilizando o framework Jest e as validações com a biblioteca Joi. A API foi containerizada utilizando Docker, e o banco de dados utilizado foi o MongoDB com a biblioteca Mongoose.

Tecnologias utilizadas

  • Nest.js - Framework para desenvolvimento de aplicações em Node.js.
  • Mongoose - ODM para o banco de dados MongoDB.
  • Jest - Biblioteca de testes em JavaScript.
  • Docker - Plataforma para desenvolvimento, envio e execução de aplicações.
  • Websocket - Protocolo que permite persistir conexões TCP entre o servidor e o cliente.
  • Joi - Biblioteca para validação de dados.

Como rodar a API

Para rodar a API, você precisará ter o Docker instalado na sua máquina. Se preferir, também é possível rodar a aplicação sem ele, basta seguir as instruções na seção "Rodando sem Docker".

  1. Clone o repositório:

https://github.com/dev-luizf/device-manager.git

  1. Entre na pasta do projeto:

cd device-manager

  1. Crie um arquivo .env na raiz do projeto com as seguintes variáveis::
MONGO_URI="mongodb://localhost:27017/device-manager"

  1. Rode o Docker Compose:

npm run compose:up

  1. Acesse a API em http://localhost:3001.

Rodando sem Docker

Se você preferir não utilizar o Docker, siga as instruções abaixo.

  1. Clone o repositório:

https://github.com/dev-luizf/device-manager.git

  1. Entre na pasta do projeto:

cd device-manager

  1. Instale as dependências:

npm install

  1. Crie um arquivo .env na raiz do projeto com as seguintes variáveis:

MONGO_URI="mongodb://localhost:27017/device-manager"

  1. Inicie o servidor:

npm run start:dev

  1. Acesse a API em http://localhost:3001.

Endpoints

GET /devices

Retorna a lista de todos os dispositivos.

GET /devices/:id

Retorna as informações de um dispositivo específico.

POST /devices

Cria um novo dispositivo.

PUT /devices/:id

Atualiza as informações de um dispositivo existente.

DELETE /devices/:id

Exclui um dispositivo existente.

Testes

A API possui testes unitários escritos com a biblioteca Jest. Para roda-los, execute o seguinte comando:

npm run test

About

API Rest desenvolvida em Nest.js. Responsável por gerenciar dispositivos IoT, permitindo a criação, leitura, atualização e remoção de dispositivos.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published
pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy