Tecnologias:
"body-parser": "^1.20.0",
"chai": "^4.3.6",
"chai-http": "^4.3.0",
"cors": "^2.8.5",
"express": "^4.18.1",
"mocha": "^10.0.0",
"mysql2": "^2.3.3",
"nodemon": "^2.0.18",
"sequelize": "^6.21.2"
Tipos de dados do veiculo:
name: STRING(60)
brand: STRING(60)
color: STRING(30)
year: INTEGER
board: STRING(7)
isFavorite: BOOLEAN
Rotas:
GET /vehicles
Retorna todos os veiculos
POST /vehicles/new
Recebe do body os dados(name, brand, color, year, board) e persiste o objeto no BD
DELETE /vehicles/delete:id
Recebe do params um id e delete
POST /vehicles/update
Recebe do body os dados(name, brand, color, year, board) e persiste atualiza o objeto no BD
GET /vehicles/query/:data
Recebe do params um dado, e faz a pesquisa em todos os campos, ele retorna todos os objetos que em alguma coluna tem o dado passado.
Desafio CoreLab:
Desafio Corelab! DesafioCorelab Você vai criar uma aplicação web que vai consumir uma API para gerenciar o CRUD de veículos.
Se você se sentir mais confortável, pode escolher qualquer outro framework de React e nos mostrar as suas habilidades.
O repositório de backend é esse: https://github.com/corelabbr/corelab-api-challenge
O repositório de frontend é esse: https://github.com/corelabbr/corelab-web-challenge
Se você se sentir mais confortável, pode escolher qualquer outro framework de Node JS e nos mostrar as suas habilidades.
Tente nos mostrar tudo o que você pode fazer, quanto mais você fizer pelo código e se importar com ele, mais nós vamos nos impressionar. Essa é a sua chance!
O Layout do Mobile pode ser encontrado aqui: https://shorturl.ae/NTyff
O Layout do Desktop pode ser encontrado aqui: https://shorturl.ae/xEIEo
DesafioCorelab Backend Repositório:
- Node: ^16.15.0
- NPM: ^8.5.5
- Framework: Adonis TS ou qualquer outro que você preferir.
- Banco de dados: Escolha o sue próprio, você pode até mesmo salvar na memória.
Frontend Repositório:
- Node: ^16.15.0
- NPM: ^8.5.5
- Framework: React TS
- Sass ou outro preprocessador
As Funcionalidades Requeridas:
- Ao clicar em um botão "Adicionar novo veículo", um novo formulário deve ser aberto para criar um novo veículo.
- Ao submeter o formulário, o novo veículo deve ser salvo.
- Ao digitar algo no input de pesquisa, deve-se filtrar os veículos comparando qualquer que seja a propriedade do veículo. Por exemplo: deve-se comparar o termo procurado com o nome, ou a descrição, ou o preço, ou qualquer outro campo do veículo.
- Ao clicar em um ícone de coração, deve-se favoritar o veículo.
- Ao clicar em um ícone de edição, deve-se abrir novamente o formulário do veículo selecionado para editá-lo.
- Ao clicar no botão no deletar, deve-se remover o veículo.
- Ao clicar no botão de filtro, deve-se abrir um formulário de filtros, e quando os filtros forem selecionados, deve-se filtrar os veículos baseados nos valores.
O que estamos avaliando:
- Qualidade do código
- Formato do código
- Desempenho do código
- O design do frontend
- Se seu código pode ser lido facilmente
- Abordagem Mobile First
- Responsabilidade no código
- Funcionamento das funcionalidades
- Responsividade
Quer nos impressionar ainda mais?
Se você se sentir confortável e quiser nos impressionar ainda mais, você pode fazer o seguinte:
- Trabalhar nas typagens corretas e interfaces
- Trabalhar nas regras eslint
- Trabalhar nas configs do prettier
- Trabalhar nos conteiners docker
- Trabalhar nos testes
- Trabalhar no CI/CD
O que fazer quando acabar:
Crie o seu arquivo PULL REQUEST.md, onde você vai descrever o que e como fez, o mais detalhadamente possível. Sinta-se livre para adicionar vídeos para explicar melhor.