Para rodar a aplicação, você precisa ter o Node, Docker, Docker-compose e Yarn instalados em sua máquina e seguir os passos abaixo:
-
Abra um terminal e copie este repositório com o comando
git clone https://github.com/rogerinn/mon_prospecteur.git
ou use a opção de download.
-
Entre na pasta com
cd mon_prospecteur -
Rode a aplicação, docker irá instalar dependencias e configurações externas.
docker-compose up --build -d
Ou
docker-compose up --build
para manter interatividade no terminal.
-
Acesse
http://localhost:3000no seu cliente http de preferência (Postman, Insomnia, etc).
Para rodar os testes, você precisa ter executar o passo anterior e depois seguir os passos abaixo.
-
Testes unitários
yarn test:unit
-
Testes e integração
yarn test:integration
-
Cobertura de testes
yarn test:ci
Documentação de uso.
A primeira parte do caminho URI especifica a versão da API que você deseja acessar no formato v{version_number}.
Por exemplo, a versão 1 da API (mais atual) pode ser acessada por meio de:
https://localhost/v1/
Todas as solicitações de API são feitas enviando uma solicitação HTTPS segura usando um dos seguintes métodos, dependendo da ação que está sendo realizada:
POSTCrie um recursoPUTAtualizar um recursoGETObtenha um recurso ou lista de recursosDELETEExcluir um recurso
Para solicitações PUT e POST, o corpo de sua solicitação pode incluir uma carga útil JSON, e o URI solicitado pode incluir uma string de consulta especificando filtros ou comandos adicionais, todos descritos nas seções a seguir.
Cada resposta será retornada com um dos seguintes códigos de status HTTP:
200OKO pedido foi bem sucedido400Bad RequestHouve um problema com a solicitação (segurança, malformado, validação de dados, etc.)401UnauthorizedAs credenciais de API fornecidas são inválidas403ForbiddenAs credenciais fornecidas não têm permissão para acessar o recurso solicitado404Not foundFoi feita uma tentativa de acessar um recurso que não existe na API500Server ErrorOcorreu um erro no servidor
SignUp
-
Method:
POSTPath:/v1/sign-upRequest
Content-Type:application/json, Accept:application/json, body: { "email": "any@email.com", "password": "12345", "confirmationPassword": "12345" }
-
email:ObrigatórioStringMin: 10Max: 50-
password:ObrigatórioStringMin: 10Max: 50-
confirmationPassword:ObrigatórioStringMin: 10Max: 50Response
-
200
statusCode: 200 { "id": 1, "email": "any@email.com", "token": "any_token" }
-
id:Number-
email:String-
token:String -
400
statusCode: 400 { "name": "Missing param", "message": "Missing param: {field}" }
-
name:String-
message:String-
field:email, password ou confirmationPassword
-
SignIn
-
Method:
POSTPath:/v1/sign-inRequest
Content-Type:application/json, Accept:application/json, body: { "email": "any@email.com", "password": "12345" }
-
email:ObrigatórioStringMin: 10Max: 50-
password:ObrigatórioStringMin: 10Max: 50Response
{ "token": "any_token" }-
token:String
Search
-
Method:
GETPath:/v1/searchRequest
Content-Type:application/json, Accept:application/json, params: { "address": "any_address" }
-
address:ObrigatórioStringMin: 10Max: 50Response
{ "data": [ { "address": "any_address" } ] }-
data:Array
Melhorias e features:
- CD/CI: Teraform, Ansible and Azure cloud (Pipeline).
- Front: Angular.
- Banco de dados: Modelagem.
- Documentação: Adicionar lista com tipos de erros. Ex: "Missing param".
Esse projeto está sob a licença MIT. Veja o arquivo LICENSE para mais detalhes.


