###### tags: `Softplan` `Avaliação Frontend` # Avaliação Frontend (OFICIAL) ## Objetivo: #### Desenvolver uma aplicação web contendo os seguintes requisitos: 1. A aplicação deverá estar protegida por login e senha; 2. Deverá existir 2 tipos de perfis (`ADMIN` e `USER`); 3. Deverá possuir interface para pesquisa dos usuários cadastrados; 4. Deverá possuir interface para cadastro (`CRUD`) dos usuários da aplicação; 5. Deverá possuir interface para visualizar “Meu perfil”, podendo alterar a senha; 6. Deverá possuir a opção de "Sair" da aplicação; 7. Deverá aparecer o nome e/ou foto do usuário no `header` da aplicação; #### Regras de negócio: * O usuário com acesso `ADMIN` poderá executar cadastro (`CRUD`) de outros usuários e visualizar; * O usuário com acesso `USER` poderá apenas visualizar os usuários do sistema; #### Requisitos não funcionais: * Testes unitários; * O frontend deverá ser desenvolvido em React; * Utilizar algum mock http, exemplo: [json-server](https://github.com/typicode/json-server); * Utilizar algum framework UI (Material-UI, Bootstrap, AntDesign, etc...); #### PLUS: * Use a sua criatividade, funcionalidades extras serão bem vindas :) * Utilização de alguma lib para formulários; * Usuário possuir foto no seu cadastro; #### O que será avaliado: * Habilidades com React; * Organização do código - Boas práticas de Clean Code, arquitetura, padrões de projeto; * Testes unitários; * Funcionalidades requisitadas (o CRUD deve estar conforme a especificação); * Documentação - `README.md` bem descrito para conseguirmos rodar o projeto por aqui; * Layout das telas; ###### Sugestão de estrutura: ```json= { "users": [ { "id": 1, "firstName": "Thomas", "lastName": "Hudson", "birthDate": "1989-12-24", "email": "thomas.hudson@gmail.com", "document": "52254883070", // CPF gerado no site: https://www.4devs.com.br/gerador_de_cpf "password": "MTIzNDU2", // base64 de '123456' "role": "ADMIN", }, { "id": 2, "firstName": "Gallegos", "lastName": "Hopkins", "birthDate": "1996-10-24", "email": "gallegos@hopkins.com", "document": "28453844089", // CPF gerado no site: https://www.4devs.com.br/gerador_de_cpf "password": "MTIzNDU2", // base64 de '123456' "role": "USER", }, ] } ``` #### Instruções para envio: Para o envio do exercício pedimos que seja criado um repositório `privado` no github: * Adicionar como contribuidor o usuário: `devunic` * Lembrar de colocar observações, decisões e outros comentários que possam ser úteis no arquivo `README`; #### Ahh, se você possuir algum projeto pessoal e quiser nos mostrar, seria legal ;D