Aplicativo para criar várias listas para serem usadas simultaneamente e sincronizadas na nuvem após os dados serem salvos localmente (Offline-first).
- Autenticação o mais simples possível.
- Cadastrar várias listas diferentes.
- Marcar e desmarcar itens reposicionando os desmarcados.
- Sincronizar dados na nuvem.
- Edição de usuário autenticado.
- Configuração de dispositivo.
A autenticação é necessária para efetuar a sincronização e deve ser opcional, ou seja, solicitada quando o usuário executar manualmente a sincronização. A aplicação deve dar suporte a Autenticação “sem-senha” (Passwordless) enviando o token por email para fazer o acesso.
O usuário poderá criar um número limitado de listas de compras, mostrando as informações totais da lista como: Nome da Lista, valor R$(se houver) e status em forma de card.
Os status da lista devem ser: Pendente, Concluída, Desativadas.
O usuário poderá filtrar as listas por status.
Cada lista precisará dividir os itens marcado dos desmarcados e dando a opção ao usuário reposicionar os itens desmarcados.
Todas as listas e seus dados serão guardados localmente no dispositivo do usuário, sendo sincronizados posteriormente na nuvem. A sincronização deve ser automática e as tentativas de sincronização em caso de falha devem ser feito em um espaçamento de minutos. Esse último ponto é importante para economizar bateria em dispositivos móveis.
Caso autenticado, o usuário deveria ter a possibilidade de alterar informações como Nome, Sobrenome e imagem de perfil.
O app deverá ter opções de controle de tema e remoção de cache.
Toda interface será feita usando componentes pré-construídos do Material Design 3. Informações de mockup, fonte e assets estão disponíveis no Figma.