Skip to content
This repository was archived by the owner on Jul 5, 2023. It is now read-only.

mdccg/postal-code-api

Repository files navigation

postal-code-api

Sumário

Motivação

Este projeto consiste em um app back-end de Códigos de Endereçamento Postal (CEPs) que permite seu cadastro e consulta.

Existem três endpoints disponíveis na API:

  • POST /ceps: recebe um payload em formato JSON contendo o número do CEP e seu logradouro e salva essas informações no banco de dados;
  • GET /ceps/busca/cep/:cep: recebe o número do CEP via path param e retorna o logradouro referente ao CEP consultado;
  • GET /ceps/busca/logradouro/:logradouro: recebe o logradouro via path param e retorna o número do CEP referente.

Para cada endpoint foi implementado um conjunto de testes que verifica se as respostas estão de acordo com as especificações. Um detalhe importante é que todas as requisições que envolvem CEPs utilizam a máscara #####-### para garantir que o formato de oito dígitos seja seguido.

Este foi o quarto repositório de código apresentado no Curso Superior de TSI do IFMS como requisito para obtenção da nota parcial das atividades da unidade curricular Linguagem de Programação III.

← Repositório anterior Próximo repositório →

Pilha de tecnologia

As seguintes tecnologias foram utilizadas para desenvolver este app:

Papel Tecnologia
Ambiente de execução Node
Linguagem de programação TypeScript
Back-end Express.js
Framework de teste Cypress
Virtualização de banco de dados Docker
Banco de dados MongoDB

Como rodar

Pré-requisitos

Passo a passo

  1. Clone o repositório de código em sua máquina;

  2. Abra um shell de comando de sua preferência (prompt de comando, PowerShell, terminal etc.);

  3. Instale as dependências do projeto através do seguinte comando:

$ npm install

Caso esteja utilizando o gerenciador de pacotes Yarn, execute o seguinte comando como alternativa:

$ yarn
  1. Com o Docker instalado, execute o comando abaixo para levantar o container Docker com o respectivo banco de dados virtualizado. Certifique-se de estar no diretório do arquivo docker-compose.yml;
$ docker-compose up -d

O parâmetro -d serve para desocupar o shell de comando logo após a execução do comando. É uma boa convenção, ao encerrar a execução do app, derrubar o container levantado através do comando:

$ docker-compose down

Mas, não se preocupe. As tuplas inseridas no banco de dados não serão deletadas com a derrubada do container.

  1. Execute o seguinte comando para iniciar a API:

Para npm:

$ npm run dev

Para Yarn:

$ yarn dev
  1. Por fim, execute o seguinte comando para testar a API iniciada:

Para npm:

$ npm run cy:run

Para Yarn:

$ yarn cy:run

About

Gerenciador de Códigos de Endereçamento Postal em Express testado com Cypress.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •