O objetivo deste teste é validar expressamente o seu conhecimento.
- PHP 8
- Laravel 10.x
- TALL Stack (Livewire 3)
- Crie um modelador
Todo
(id, title, status, created_at, updated_at)
- Relacione o modelador
Todo
com o modelUser
(1:N) - Crie uma API REST que represente um CRUD de ToDo
- A cada criação de ToDo uma fila deve ser disparada para enviar um webhook (POST) para: https://beeceptor.com/ contendo o "payload" do ToDo.
- Crie testes que valide as funcionalidades da aplicação mocando o webhook
- Consuma todos os recursos da API via Postman/Insomnia
- Crie um modelador
RequestItem
(id, user_id, quantity, created_at, updated_at)
- Relacione o modelador
RequestItem
com o modelUser
(N:1) - Através de um componente Livewire, crie um botão na página inicial da
/dashboard
- Cada clique no botão deve consumir a API
https://baconipsum.com/api/?type=meat-and-filler
- Cada clique no botão deve obter o primeiro item do json gerado pela API
- O texto gerado deve ser exibido em lista na tela, um após o outro usando foreach (cada clique no botão deve gerar um novo item na lista)
- O texto gerado também deve ser armazenado no model
RequestItem
- relacionado com o usuário autenticado - A contagem total de
RequestItem
deve ser exibida cada vez que houver o clique no botão
- Ao alcançar a quantidade de
10
registros umrate limit
(feito de qualquer forma apenas para travar o usuário) deve ser acionado com a seguinte frase exibida na tela: "Você alcançou 10 registros. Deseja resetar?" - Resetar deve ser um botão dentro de um segundo componente Livewire. Ao selecionar "Resetar", tudo deve ser resetado, recomeçando do zero, inclusive o banco de dados.
- Ao recarregar a página, tudo deve continuar de onde está, sem perder o progresso.
- Crie testes que valide as funcionalidades da aplicação mocando a API