/teste-aptidao-dg-solutions

Sistema para inserção e listagem de nome de pessoas e suas datas de nascimento. API em Python + Flask | Frontend em Vue.js

Primary LanguageVue

Desafio técnico - DG Solutions

O desafio consiste em criar um projeto que receba os dados de nome e data de nascimento de um usuário e e retorna uma lista com as pessoas e suas respectivas idades.

Todos os comandos abaixo listados levam em consideração que você está dentro do diretório do projeto.

Configurando o projeto

Pré requisitos

Backend

  1. Entre no container do backend:

    docker-compose run --service-ports backend bash
  2. Crie o ambiente virtual Python:

    python -m venv people-venv
  3. Ative o ambiente virtual:

    source people-venv/bin/activate
  4. Instale as dependências:

    pip install -r requirements.txt
  5. Saia do ambiente virtual:

    deactivate
  6. Saia do container com CTRL + D

Frontend

  1. Entre no container do frontend:

    docker-compose run --service-ports frontend bash
  2. Instale as dependências do projeto

    yarn
  3. Saia do container com CTRL + D

Subindo os serviços e iniciando execução

Execute, se preferir em terminais diferentes, os seguintes comandos:

  • Iniciar backend

    docker-compose up backend
  • Iniciar frontend

    docker-compose up frontend

Rotas da API

Para esse desafio, foram definidas três rotas:

GET - /people/list

Resposta:

{
    people: [
        {
            person_birthdate: Date,
            person_id: Integer,
            person_name: String
        }
    ]
}

POST - /people/create

Payload:

{
    person_birthdate: Date,
    person_name: String
}

Resposta:

{
    msg: "Success"
}

DELETE - /people/remove/:people_id  

Resposta:

{
    msg: "Success"
}