Analisando propostas

Crud Vue e Laravel Spa com docker

Publicado em 02 de Junho de 2024 dias na TI e Programação

Sobre este projeto

Aberto

Precisoque seja feito via docker, crud laravel e vue, pastas separadas do front e back.

Banco de dados 📦
Estrutura da base de desenvolvedores
id: integer
nivel_id: fk (niveis)
nome: varchar
sexo: char
data_nascimento: date
idade: integer
hobby: varchar
Estrutura da base de níveis
id: integer
nivel: varchar
Backend 🚀
Desenvolva uma API Restful com os métodos get, post, put/patch e delete.

Endpoints da API 🚚
Abaixo está como esperamos que sejam os endpoints da api.

⚠️ Obs: Fique atento aos requisitos adicionais ao final do documento.

Níveis
Listar Níveis (GET): /api/niveis

Resposta de Sucesso (200): Retorna a lista de níveis existentes.
{
  "Id": 1,
  "nivel": "Nome do Nível"
}
Resposta de Erro (404): Retorna se não houver nenhum nível cadastrado.
Cadastrar Nível (POST): /api/niveis

Corpo da Requisição:
{
  "nivel": "Nome do Nível"
}
Resposta de Sucesso (201): Retorna o novo nível criado.
Resposta de Erro (400): Retorna se o corpo da requisição estiver incorreto.
Editar Nível (put/patch): /api/niveis/:id

corpo da requisição:
{
  "nivel": "nome do nível"
}
resposta de sucesso (200): retorna o nível editado.
Resposta de Erro (400): Retorna se o corpo da requisição estiver incorreto.
Remover Nível (DELETE): /api/niveis/:id

Resposta de Sucesso (204): Retorna se o nível foi removido com sucesso.
Resposta de Erro (400): Retorna se houver desenvolvedores associados ao nível.
Desenvolvedores
Listar Desenvolvedores (GET): /api/desenvolvedores

Resposta de Sucesso (200): Retorna a lista de desenvolvedores existentes.
{
  "Id": 1,
  "nome": "Nome do Desenvolvedor",
  "sexo": "M",
  "data_nascimento": "1990-01-01",
  "idade": 31,
  "hobby": "Programação",
  "nivel": {
    "id": 1,
    "nivel": "Nome do Nível"
  }
}
Resposta de Erro (404): Retorna se não houver nenhum desenvolvedor cadastrado.
Cadastrar Desenvolvedor (POST): /api/desenvolvedores

Corpo da Requisição:
{
  "nivel_id": 1,
  "nome": "Nome do Desenvolvedor",
  "sexo": "M",
  "data_nascimento": "1990-01-01",
  "hobby": "Programação"
}
Resposta de Sucesso (201): Retorna o novo desenvolvedor criado.
Resposta de Erro (400): Retorna se o corpo da requisição estiver incorreto.
Editar Desenvolvedor (put/patch): /api/desenvolvedores/:id

corpo da requisição:
{
  "nome": "novo nome do desenvolvedor",
  "hobby": "violão",
  "nivel_id": 2,
  "sexo": "f",
  "data_nascimento": "1990-01-01"
}
resposta de sucesso (200): retorna o desenvolvedor editado.
Resposta de Erro (400): Retorna se o corpo da requisição estiver incorreto.
Remover Desenvolvedor (DELETE): /api/desenvolvedores/:id

Resposta de Sucesso (204): Retorna se o desenvolvedor foi removido com sucesso.
Resposta de Erro (400): Retorna se houver problemas na remoção.
Observações
Caso faça paginação, retornar o seguinte formato de resposta:

{
  "data": [], // Array de desenvolvedores ou níveis
  "meta": {
    "total": 10,
    "per_page": 10,
    "current_page": 1,
    "last_page": 1
  }
}
Frontend 🎨
Crie uma SPA (Single Page Application) com uma interface intuitiva, aplicando técnicas de ui/ux.

Deverá ter pelo menos 2 páginas:

Níveis
Desenvolvedores
Para cada página:

Listagem
Tabela com os itens cadastrados
Deve ter as opções de adicionar, editar e remover
Cadastro / Edição
Pode ser uma modal ou uma página a parte também
Exclusão
Deve ter uma confirmação antes de excluir

Categoria TI e Programação
Subcategoria Programação
Qual é o alcance do projeto? Bug ou alteração pequena
Isso é um projeto ou uma posição de trabalho? Um projeto
Tenho, atualmente Eu tenho o design
Disponibilidade requerida Conforme necessário
Funções necessárias Desenvolvedor

Prazo de Entrega: 04 de Junho de 2024

Habilidades necessárias