Como já foi informado, você e sua equipe irão desenvolver um projeto durante essa semana. Colocando em prática os principais conceitos vistos até o momento em seu projeto. Esses conceitos são:
-
OOP
- Sintaxe de classe
- Classes estáticas
-
Spread Operator
-
Desconstrução
-
Consumo de API;
-
LocalStorage.
-
Manipulação dos elementos com o DOM
-
Mobile first:
- Tela de login deve ser feita em mobile first
- Tela homepage deve ser feita em mobile first
-
Tela de Login:
-
Deve ter aparência semelhante ao figma
-
Botão "Entrar" deve percorrer o formulário e realizar a requisição de login
-
Caso a requisição esteja correta deve adicionar o token e dados do usuário no localstorage
-
Redirecionar para a homepage caso o email e senha estejam corretos
-
Retorno visual caso o usuário passar dados inválidos no input
-
-
Tela Homepage:
-
Deve ter aparência semelhante ao figma
-
Realizar a requisição de pegar os hábitos
-
Deve renderizar o nome e imagem do usuário (será necessário realizar uma requisição para pegar os dados do usuário)
-
Ao clicar na foto do usuário deve abrir um dropDownMenu com os as funcionalidades de editar perfil e sair/logout
-
No dropDownMenu na opção de editar perfil deve abrir menu de edição do usuário
-
No dropDownMenu na opção de sair/logout deve apagar os dados do localstorage e redirecionar o usuário para a página de login
-
Adicionar a lista de habitos a página
-
Botão de "Concluídos" deve exibir apenas os hábitos concluídos
-
Botão "Todos" deve exibir todos os hábitos do usuário
-
Botão "Criar" deve abrir modal para criar novos hábitos
-
"..." deve abrir modal de atualização de hábitos
-
Dentro do modal de atualização de hábitos também deve ter a opção de excluir que realiza a requisição de deletar hábito
-
Checkbox deve realizar uma requisição de atualizar o hábito o tornando concluído ou não concluído
-
-
Modais:
-
Devem ter a aparência semelhante ao figma
-
Os modais devem ser construídos com formulários
-
Deve capturar as informações do formulário
-
Realizar as requisições de acordo com o tipo de formulário, criar, atualizar ou deletar
-
Retorno visual caso o usuário passar dados inválidos no input
-
Animação nos botões
-
Animação durante as transições de tela
-
Animação durante o popup dos modais
-
Padronização nos nomes das branches
-
Os commits seguem um padrão
-
Estilização da checkbox
-
Popup de erro para as requisições
Você e sua equipe deverão seguir o layout proposto, Clique aqui para acessar o figma!
Você deverá seguir os padrões estabelecidos pela API, para realizar as requisições Clique aqui
Para iniciar, acesse esse link e clone o repositório. Todos irão trabalhar no mesmo repositório, então apenas o líder (scrum master) irá clonar e os demais integrantes do grupo deverão ser adicionados ao repositório e realizar o clone.
Ao clonar o repositório já será dada uma estrutura básica para o projeto. Essa estrutura é um modelo que sugerimos que sigam, mas cabe ao grupo decidir usar ou seguir uma outra estrutura, fiquem a vontade para alterar como preferirem, mas será exigido que exista uma organização dos arquivos e pastas.
-
Assets:
Nesta pasta são armazenados arquivos de imagens(png, svg, jpg), logos e icones
-
Models:
Nas models ficam seus arquivos de classes referêntes a instâncias, como Pet, Pessoa, Empresa, Banco, etc
-
Controller:
Nesta pasta serão feitas suas classes estáticas como requisições para API, criação de elementos DOM, uso das classes modelo entre outras funções que necessite
-
Views:
Na pasta views, devem ser armazenados seus arquivos de páginas html, como dashboard, homepage, login, register, etc
-
Script:
Na pasta scripts são adicionados seus arquivos de js referentes as paginas, onde serão chamadas as funções vindas dos controller para realizar a construção da página
-
Css:
Na pasta css são adicionados seus arquivos de estilização, reset.css, style.css, entre outros paginas de estilização que achar necessário
Aviso
Durante o desenvolvimento o repositório deve permanecer private, após as apresentações poderá ficar público e compartilhar nas redes sociais.
Faça o push do código para o seu repositório GitHub e implemente-o GitHub pages. Não esqueçam de colocar o repositório como Private e adicionar em Configurações -> Colaboradores e Times, o time team-m2-correcoes. No Canvas, por favor, enviar a url do GitHub Pages: (ex: https://nomedeusuario.github.io/oregon-trail-inheritance), enviar o link do repositório e o nome de todos os integrantes da equipe nos comentários.