Neste desafio a pessoa candidata terá total liberdade de usar as ferramentas e linguagens que está mais familiarizado.
O objetivo principal será identificar sua criatividade e a capacidade de resolver um problema, principalmente o potencial de implementação, qualidade de código, organização, boas práticas, conceitos de Clean Code SOLID e preocupação com desenvolvimento para grandes volumes transacionais.
Os requisitos necessários para a entrega são:
Ter uma base de dados com uma tabela produtos com os campos: Nome do produto Código de produto Descrição do produto Preço do produto Criar uma página web na tecnologia de sua preferência para o CRUD de produtos.
Nessa página o usuário deverá ter a habilidade de exibir, deletar, criar, e editar produtos que estão salvos na base. Todas as ações na página deverão refletir no banco de dados.
Front-end: React, TailwindCSS.
Back-end: Node, Express, MySql.
Clone o projeto
git clone https://github.com/Doni-zete/react-bestminds-desafio
Entre no diretório do projeto. Há dois projetos: um backend-crud-mysql e outro frontend-react.
Execute os passos abaixo no terminal:
cd backend-crud-mysql
Instale as dependências
npm install
cd ..
cd frontend-react
Instale as dependências
npm install
Após executar os comandos acima, irão aparecer duas pastas com o nome "node_modules".
Para rodar esse projeto, você vai precisar adicionar as seguintes variáveis de ambiente no seu .env
DB_HOST=
DB_USER=
DB_PORT=
DB_PASSWORD=
DB_DATABASE=
Há um arquivo na raiz do projeto "backend-crud-mysql", denominado ".env_exemplo". Lembre-se de renomeá-lo para ".env" e coloque as variáveis para se conectar com o seu banco MySql.
Você irá precisar de dois terminais abertos: um para executar o projeto do frontend e outro para o backend.
Inicie o servidor para o backend-crud-mysql. Lembre-se de estar dentro da pasta utilizando o comando
cd backend-crud-mysql
Inicie o servidor
npm run start
Se tudo ocoreu bem ira aparecer a mensagem abaixo:
Se aparecer essa outra mensagem, significa que as variáveis de ambiente não foram configuradas.
No outro terminal, lembre-se de estar dentro da pasta correspondente.
cd frontend-react
Inicie aplicação
npm start
Se tudo ocorreu bem você tera dois terminais iguais abaixo um para o backend e outra para o frontend.
O backend-crud-mysql esta rodando na porta:
http://localhost:3000
O frontend-react esta rodando na porta:
http://localhost:3001
Se você tiver algum feedback, por favor me deixe saber por meio de [email protected]