8000 GitHub - dev-mariana/konsi: Desafio técnico para a empresa Konsi.
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content

dev-mariana/konsi

Repository files navigation

Desafio Técnico Konsi

Este é um projeto desenvolvido para o desafio técnico da Konsi. Ele consiste em uma aplicação simples que permite buscar benefícios associados a um CPF em uma API externa e exibir os resultados em uma nova tela. O projeto utiliza Fastify, TypeScript, Redis, RabbitMQ, Elasticsearch e Handlebars para a renderização das views.

Tecnologias Utilizadas

Pré-requisitos

  • Node.js (versão 18 ou superior)
  • NPM ou Yarn para gerenciamento de pacotes
  • Docker

Configuração do Ambiente

  1. Clone o repositório para sua máquina local:

    git clone https://github.com/dev-mariana/konsi.git
  2. Acesse o diretório do projeto:

    cd konsi
  3. Rode o docker compose para criar os containers:

    docker compose up -d
  4. Instale as dependências:

    npm install ou yarn install
  5. Crie um arquivo .env na raiz do projeto e coloque as variáveis de ambiente:

    • NODE_ENV="development"
    • PORT=3000
    • BASE_URL="api-externa"
    • EXTERNAL_API_USERNAME="username da api externa"
    • EXTERNAL_API_PASSWORD="password da api externa"
    • RABBITMQ_CONNECTION="connection rabbit mq"
    • RABBITMQ_QUEUE="nome da fila"
    • REDIS_URL="connection redis"
    • ELASTICSEARCH_URL="connection elasticsearch"

Executando o Projeto

  1. Iniciar o servidor:

    npm run dev ou yarn dev

Testando os Endpoints

  • Enviar fila com os dados da lista de benefícios para o RabbitMQ e salvar no Redis:
{
  "tax_id": "869.230.000-41"
}
  • Fazer busca dos dados de benefícios salvos no Redis, enviados para a fila do RabbitMQ e indexados no Elasticsearch:
curl --location 'http://localhost:3000/api/benefits/search?taxId=12345689101'

About

Desafio técnico para a empresa Konsi.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published
0