Skip to content

mcesarpl/photosData

Repository files navigation

PhotosData

Este projeto foi utilizado para construção de uma API, disponibilizada através do Express para realização de chamadas http para um banco de dados de fotos, tramento dos dados retornados e reenvio para o cliente final. Foi o padrão Adapter para desacoplar o uso de clientes http, aqui estando disponível a biblioteca axios.

Também foram utilizados os padrões de projeto FactoryMethod e Facade. Foi aplicado o conceito de Injeção de Dependência. Além disso, foi desenvolvido com Test Driven Development utilizando a biblioteca Jest para a criação, mock e execução dos testes.

O projeto também conta com um serviço de log utilizando-se do Winston e do Elasticsearch, sendo possível visualizar os logs através do Kibana. Ambos são disponibilizados para Api através do Docker.

Tecnologias

O projeto utiliza as seguintes tecnologias: NodeJs Ts-Node Typescript Express Cors Axios Winston Jest Ts-Jest Eslint Express-Rate-Limit, http-status-codes, Husky Elasticsearch Kibana Docker

Instalação

  • Disponibilize os serviços Elasticsearch e Kibana
  $ docker-compose up -d
  • Para instalar todas as dependências do projeto
  $ yarn install
  • Para rodar o projeto em ambiente local
  $ yarn dev

A API se encontrará disponível na porta 8080

Utilização

Rotas