Este material apresenta uma visão geral de um projeto de estudo, desenvolvido com React, que tem como objetivo explorar as melhores práticas e conceitos de desenvolvimento de aplicações web. A seguir, são detalhadas as tecnologias utilizadas, as funcionalidades implementadas e as decisões de projeto adotadas.
- React: Biblioteca principal para a construção da interface.
- React Router DOM: Para gerenciamento de rotas na aplicação.
- Material UI: Biblioteca de componentes de interface.
- Axios: Para fazer requisições HTTP.
- Jest e Testing Library: Para testes automatizados.
- Express: Framework para construção da API.
- Bcrypt: Para hashing de senhas.
- Jsonwebtoken: Para gerenciamento de tokens JWT.
- Autenticação: A aplicação está protegida por login e senha.
- Perfis de Usuário:
- ADMIN: Pode realizar o CRUD de usuários e visualizar todos os usuários.
- USER: Pode visualizar os usuários do sistema.
- Gestão de Usuários: Interface para realizar operações de cadastro, leitura, atualização e exclusão (CRUD) de usuários.
- Meu Perfil: Interface para visualização e atualização de senha do usuário logado.
- Pesquisa de Usuários: Interface para pesquisa de usuários cadastrados.
- O frontend é desenvolvido em React.
- Criação de testes automatizados.
- Instruções claras de como logar na aplicação.
- Hospedagem do projeto na Vercel.
- Node.js (versão 18.x)
- npm ou yarn
-
Clone o repositório:
git clone https://github.com/seu-usuario/unic-frontend-challenge.git cd unic-frontend-challenge -
Instale as dependências do frontend:
npm install
-
Instale as dependências do backend:
cd backend npm install cd ..
-
Inicie o backend:
cd backend npm start cd ..
-
Inicie o frontend:
npm start
Para rodar os testes automatizados, utilize o comando:
npm test| - | ID | Nome | Senha | Role | |
|---|---|---|---|---|---|
| 2 | gleidson@gmail.com | Gleison Jesus | password | user | user |
| 3 | edu@gmail.com | Eduardo Teixeira | password | user | user |
| 4 | agathagrocha@gmail.com | Agatha Rocha | admin | admin | admin |
| 5 | maria@gmail.com | Maria Silva | password | user | user |
| 6 | joao@gmail.com | João Souza | password | user | user |
| 7 | ana@gmail.com | Ana Oliveira | admin | admin | admin |
| 8 | carlos@gmail.com | Carlos Lima | password | user | user |
| 9 | lucas@gmail.com | Lucas Fernandes | password | user | user |
| 10 | juliana@gmail.com | Juliana Costa | admin | admin | admin |
| 11 | roberto@gmail.com | Roberto Marques | password | user | user |
- Escolhemos o Material UI pela facilidade de uso e pela vasta quantidade de componentes prontos que aceleram o desenvolvimento.
- Jest e Testing Library foram escolhidos para garantir a qualidade do código por meio de testes automatizados.
A aplicação está hospedada no Vercel e pode ser acessada aqui.
Este projeto foi desenvolvido para estudo e prática de conceitos de frontend e backend. Sinta-se à vontade para explorar, testar e sugerir melhorias. Boas práticas e testes ajudam a construir aplicações mais confiáveis.