Desenvolvimento Progressive Web App


Evaluando propuestas
Descripción:
Progressive Web App
Desenvolvimento Front-End
Recursos: Angular 4 / Ionic 3

Objetivo: Desenvolver um App contendo autenticação e páginas de cadastros, módulos administrativos, permissões, etc.

Plataformas: Dispositivos rodando android e desktop windows (chrome) / desktops MAC (safari) irão acessar o App através do navegador, através dos recursos disponíveis no desenvolvimento do Progressive Web App e em Iphones e Ipads será gerado o build no ionic / cordova para instalar o App. Essa manobra se faz necessário devido à utilização do Push Notification, que futuramente será implementado neste projeto.

Requisitos:
Telas:
- Página de Login (sem vínculo com redes sociais);
- Página para recuperar senha;
- Página de Registre-se (sem vínculo com redes sociais);
- Página Inicial;
- MÓDULOS / CRUD:
- Cadastro de Empresas / Filiais;
- Cadastro de Perfis de Acesso;
- Cadastro de Usuários;
- Outras:
- Settings;

Fluxos:
- Página de Login:
- Campos:
- Usuário / E-mail;
- Senha;
- Manter-se Conectado
- Botões:
- Acessar / Entrar;
- Registre-se;
- Esqueci a Senha;
- Autenticação:
- Oauth 2;
- Será através de API (estará disponível);

- Página de Registre-se:
- Campos:
- Tipo: [COLABORADOR / FORNECEDOR]
- Nome;
- Celular;
- E-mail;
- Senha;
- Se Colaborador:
- CPF;
- Usuário;
- Se Fornecedor:
- CNPJ (um ou mais);
- Nome do Vendedor;

- Botões:
- Registrar-se;
- Voltar;
- API:
- API de Registro de usuário (estará disponível)

- Página de recuperar Senha:
- Campos:
- Usuário / E-mail;
- Botões:
- Enviar;
- Voltar;
- API:
- API de Recuperação de Senha (estará disponível)

Usuário Autenticado [Módulos / Páginas]:

- Template sugerido:
- Header Fixo:
- Nome da empresa;
- Icone de Push Notification;
- Main:
- Carrega as páginas requisitadas;
- Footer: nenhuma informação
- Menu:
- Somente habilitado se o usuário estiver dentro de algum módulo, pois caso ele esteja na página inicial serão exibidos todos os módulos aos quais ele tem acesso permitido;

- Página Inicial:
- Conterá os módulos que o usuário tem acesso;

- Página de Cadastro de Empresas / Filiais:
- List com search contendo a relação de todas as empresas / filiais;
- List com scroll infinito;
- Opções para incluir, alterar e excluir;
- Permissões deste módulo:
- Incluir (CREATE);
- Alterar (UPDATE);
- Excluir (DELETE);
- Acessar / Ler (READ);

- Campos:
- Código Interno;
- Nome da empresa;
- Tipo: [Matriz / Filial];
- Status: [Ativo / Inativo];
- Licenciada: [Sim / Não]
- Token Ativação;
- CD: [Sim / Não];

- Operações desta Página:
- Após cadastrar uma nova empresa, o usuário poderá solicitar o licenciamento da mesma, o App tem licenciamento por empresa, então somente as empresas licenciadas poderão ser utilizados em outros módulos do sistema.

- API's:
- Operações de CRUD;
- Requisição de licenciamento de empresa;

- Página de Cadastro de Perfis de Acesso:
- List com search contendo a relação de todos os perfis;
- List com scroll infinito;
- Opções para incluir, alterar e excluir;
- Permissões deste módulo:
- Incluir (CREATE);
- Alterar (UPDATE);
- Excluir (DELETE);
- Acessar / Ler (READ);

- Campos:
- Nome do Perfil;
- Empresas: uma ou mais;
- Dias e horário de acesso;
- Tipo de Acesso: Interno / Externo / Ambos

- Operações desta Página:
- Após cadastrar um perfil é necessário informar quais permissões o mesmo conterá. Para informar as permissões o usuário deverá percorrer um list contendo os módulos, SubModulos e Funções e ir selecionando o que deseja, vide exemplo abaixo:

Módulo: Administrativo
- SubModulo: Cadastro de Usuário
- [ ] Acessar [READ]
- [ ] Incluir [CREATE]
- [ ] Alterar [UPDATE]
- [ ] Deletar [DELETE]
- [ ] Ativar / Inativar Usuário [EXECUTE]

- Como pode ser visto no exemplo acima o usuário pode selecionar as permissões básicas (CRUD) de um módulo e algumas rotinas específicas, tal como uma função específica deste SubModulo que é uma permissão exclusiva para Ativar/Inativar Usuário, onde para ativar ou inativar um usuário o perfil tem que ter esta permissão especifica;
- O List que será carregado com as permissões será em formato json;

- API's:
- Operações de CRUD;
- Processamento das permissões, cada alteração nos checkbox's das permissões será uma requisição à API, assim o usuário não precisa preencher tudo para depois clicar em salvar;

- Página de Cadastro de Usuários:
- List com search contendo a relação de todos os usuários;
- List com scroll infinito;
- Opções para incluir, alterar e excluir;
- Permissões deste módulo:
- Incluir (CREATE);
- Alterar (UPDATE);
- Excluir (DELETE);
- Acessar / Ler (READ);

- Campos:
- Tipo: [COLABORADOR / FORNECEDOR]
- Nome
- Celular;
- E-mail;
- Status: [Ativo / Inativo]
- Formas de Acesso Permitidas:
- Todas;
- Desktop's [Chrome / Safari];
- App Mobile;
- Dispositivos Permitidos:
- Todos;
- Lista de dispositivos para autorizar (checkbox);
- Se Colaborador:
- CPF;
- Usuário;
- Tipo de Autenticação: [AD / Normal]
- Se Fornecedor:
- CPNJ (um ou mais);
- Senha;
- Nome do Vendedor;
- Código Interno;

- Operações desta Página:
- No primeiro acesso o usuário utiliza a página inicial "Registre-se" para criar seu registro no sistema, feito isso será necessário que o usuário com as devidas permissões "libere seu cadastro", realizando as seguintes parametrizações no seu cadastro:
- Se Colaborador:
- Seleciona a forma de acesso;
- Informa o tipo de autenticação;
- Se fornecedor:
- Vincula Código interno: um select contendo a relação de fornecedores cadastrados em sistema interno do cliente que será vinculado à este registro;
- Colaborador / Fornecedor:
- Vincula um ou mais perfis de acesso: todos os usuários que se registraram devem conter um ou mais perfis de acesso, que definirá as permissões de acesso dentro do sistema;
- Autoriza o dispositivo ao qual o usuário utilizou para acesso o App, se for um dispositivo mobile, registrar o Device e vincular;

- API's:
- Operações de CRUD;

- Página de Settings:
- Esta página contém um formulário com as informações da conta do usuário que o mesmo pode atualizar, as informações são:
- Nome
- Celular;
- Se Colaborador:
- CPF;
- Se Fornecedor:
- CNPJ (um ou mais);
- Senha;
- Nome do Vendedor;

- Considerações:
- Este App é em sua maioria de gestão interna, com alguns acessos externos;
- Os requisitos acima são o início do projeto, serão implementados muitos outros módulos;
- Como dito anteriormente o App deverá ser totalmente responsivo, de forma que possa ser visualizado em navegadores no desktop (Chrome, Firefox para Windows e Safari para MAC), que seja utilizado no chrome em plataformas com android e em dispositivos Iphone e Ipad será gerado um build. Essa manobra será utilizada para que possamos utilizar o Web Push Notification para os dispositivos que suportam a instalação do Service Works e no Iphone/Ipad será utilizado o recurso de Push Notification do ionic/cordova;

Procuro um freelancer para desenvolver completamente o front-end, toda a elaboração do back-end (API) será por minha conta e será de acordo com a necessidade do front-end.
Já possuo uma conta de desenvolvedor na Apple e a parte de Push Notification não será implementada neste primeiro momento;
Preciso de um freelancer com boa experiencia em UX, pois os clientes a quem represento necessitam de um App que seja intuitivo e de boa usabilidade. Procuram um layout clean e bem objetivo;

Os freelancers que demonstrem interesse no projeto enviem um portfólio contendo imagens de soluções desenvolvidas, pois todos serão analisados.


Categoria: IT & Programação
Subcategoria: Programação para dispositivos móveis
Qual é o alcance do projeto?: Alteração média
Isso é um projeto ou uma posição de trabalho?: Um projeto
Tenho, atualmente: Eu tenho especificações
Disponibilidade requerida: Conforme necessário
Integrações de API: Outros (Outras APIs)
Plataformas exigidas: iPhone, iPad, Android, Outro

Abierto

Presupuesto

1

Propuestas

4

Freelancers interesados

Publicado: Hace 6 meses

Plazo: No definido

Crea tu propio proyecto

¿Buscas un freelancer para realizar un proyecto similar? Crea tu propio proyecto y recibirás ofertas de los mejores freelancers.


Freelancers que ya aplicaron para este trabajo

Rafael T. Profiissional dedicado em sempre fazer o melhor serviço que atenda a necessidade do cliente. + detalles