practice-uffs / app-bem-estar Goto Github PK
View Code? Open in Web Editor NEWAplicativo desenvolvido em conjunto ao SAE sobre saúde mental
License: MIT License
Aplicativo desenvolvido em conjunto ao SAE sobre saúde mental
License: MIT License
Mudanças sugeridas pelo Robison:
"No lugar de 13 opções na tela inicial, vamos colocar 4 e dentro dessas 4 colocar o resto."
A partir disso, o menu deverá conter os seguintes itens:
Referência:
practice-uffs/programa#1136
Depende de #20 estar finalizada
As respostas dadas pelo usuário para os questionários da issue #20 são todas armazenadas localmente. O objetivo dessa tarefa é implementar um card de alerta/sugestão se a resposta dada para um dos questionários for muito diferente da média de respostas para aquela categoria nos últimos 7 dias.
Por exemplo, se o usuário respondeu 3 vezes o questionário de alimentação, informando as respostas 5 (muito boa), 4 (boa) e 4 (boa), cuja média é 4.3 e, dessa vez, a pessoa responder 3 (médio), o aplicativo mostra o card (porque 3 < 4.3
). Ainda nesse exemplo, imaginando que o usuário já deu a resposta 3, o seguinte card seria mostrado na tela:
As respostas dadas no card são escolhidas de forma aleatória a partir do material disponível para aquela categoria nas páginas de dicas. Por exemplo, se a pergunta for sobre lazer, as opções serão escolhidas da página de lazer.
O conteúdo deve ser atualizado com o que a equipe de conteúdo disponibilizar;
*Deve-se aguardar o retorno da equipe para poder atualizar o conteúdo.
A pergunta é a seguinte:
Realizou atividades de lazer nos últimos 7 dias?
As respostas possíveis são:
O Cleisson teve problemas com a utilização dos CLIs do Cordova, a causa era o projeto não ter uma pasta www que o mesmo precisa para reconhecer o projeto como sendo um projeto Cordova.
Após a revisão e conclusão da tarefa do template para apps em Framework 7 iniciar este repositório com o Template.
Criar pagina inicial, após apresentação.
Utilizar do esqueleto mapeado no doc para cada ícone conforme imagem abaixo.
Padronizar os ícones, ajustar questionários de emoji. Melhorar design.
O objetivo dessa issue é implementar o básico para que o aplicativo tenha um questionário (de bem estar). O app-covid já possui um sistema de questionários implementado (ver essa página, por exemplo), então o objetido essa tarefa é migrar essa estrutura para o app de saúde mental.
As páginas do app-covid que precisam ser migradas são as seguintes:
A página risk-group-quiz.f7.html
tem o método getDiagnosis()
que faz diversas análises para dar um resultado ao usuário (paciente de covid, no caso do app-covid). Para o app de saúde mental, vamos informar (no futuro, não nessa issue) sobre o estado mental do usuário. Então, para o momento, as implementações de diagnóstico não precisam ser migradas.
Entretanto, o método sendDiagnosisAnalytics()
que é chamado no final da página risk-group-quiz.f7.html
deve ser migrado. Esse método salva os dados do questionário e envia eles para uma api. Quando esse método for migrado, não teremos o endpoint da API do practice para receber esses dados, então qualquer código de envio pode ficar comentado).
Para que o usuário acesse o questionário de bem estar, ele clicará em um ícone na página inicial do aplicativo depois de efetuar login.
Precisamos definir o conteúdo do app-saúde, estou criando esta issue para definir como vai ficar essa parte.
O @CleissonVieira fará a comunicação com a equipe de conteúdo para definir como tudo deve ser feito.
O objetivo dessa issue é implementar o visual e estrutura da tela que mede os batimentos cardíacos de um usuário. O batimento em sí não será calculado, mas a tela terá todos os elementos visuais para isso. A página deve se chamar pages/hr.f7.html
e ele deve ser acessada a partir do clique em um ícone na página inicial do aplicativo (depois do usuário efetuar login).
A estrutura da página é a seguinte:
Na figura não está mostrada a barra de botões que existe na base do app. Além disso, no topo da página, deve haver um botão para o usuário voltar para a página anterior. No futuro (em outra issue), o medimento do batimento cardíaco será implementado.
Pode se basear nessa issue aqui: practice-uffs/app-practice#219
A ideia é utilizar um iframe e utilizar o token de autenticação sem precisar fazer o login pelo widget.
v0/widgets/aura
é a rota de acesso pela API
Atualmente o conteúdo da pasta node_modules
está sendo comitado junto com os arquivos do repositório. Isso é uma prática que deixa o repositório muito grande de forma desnecessária.
Para resolver esse problema, adicionar um arquivo .gitignore
na raiz do projeto com o conteúdo desse arquivo aqui.
Depende de #3
Criar uma página no aplicativo (acessível através de um ícone na tela inicial após login) que seja relacionada a dicas de lazer. O objetivo da tarefa não é criar uma página com conteúdo final (aprovado e criado pelo SAE/con-con), mas sim termos uma página inicial do aplicativo com conteúdo.
A página deve se chamar health-tips.html
e ser acessível através da rota health-tips
. O conteúdo dessa página pode ser exatamente igual ao conteúdo da página "Dicas" do app covid:
Se quiser ajustar o conteúdo da página para algo mais relacionado com o projeto, por exemplo, você pode colocar informações sobre meditação, boa alimentação, exercícios, etc. Lembrando que o objetivo não é criar uma página oficial do app, mas sim uma tela que poderemos trabalhar no futuro.
Implementar a tela de dicas de sono.
A tela terá uma sequência de itens, que podem ser:
Cada um desses itens deve possuir um id único. Esse id poderá ser utilizado para que o usuário chegue até essa página de dicas e seja levado diretamente para esse conteúdo (eu acho que a forma mais fácil de implementar isso é usando o id do item como uma âncora <a>
, assim quando a url /pagina-dica#4
for acessada, por exemplo, o app cai diretamente na seção cujo id é 4.
O conteúdo dessa tela pode ser dinâmico e carregado a partir de uma api/planilha online. Inicialmente esse conteúdo pode ser lido de um json dentro do próprio aplicativo. Independente de onde essa informação esteja, ela deve estar disponível para todas as outras partes do aplicativo através do nome da categoria dessa página. Por exemplo, se a página a for dicas de atividade física, a categoria pode ser activity
. Outras páginas do app poderão obter uma lista dos itens existentes nessa categoria, assim eles podem mostrar dicas e sugestões.
Antes de iniciar essa tarefa, realizar o seguinte:
IMPORTANTE: o objetivo dessa issue não é implementar todas as telas ou conteúdos. Pelo contrário, é criar talvez os botões e links para as páginas que existirão no app.
Criar protótipo e reunir o máximo de dados sobre Saúde Mental, isso em conjunto com @isabelirk e @brendaellen que estão acima do projeto.
Utilizar está pasta do drive para centralizar demais conteúdos fora o protótipo
Conversar com o SAE e trazer o máximo de informações para o aplicativo. Inclusive formas de acesso as psicólogas que a UFFS disponibiliza.
Utilizar esse link do Figma para criar o protótipo.
O login deve ser feito através do e-mail: [email protected]
O protótipo será baseado no conteúdo desta Issue
Atualizar o método de login de todos os nossos serviços para não sobrecarregar os servidores.
No APP Uffs Virtual foi implementado pelo @alissonpeloso o modo escuro
Verificar a implementação, se necessário conversar com o Alisson, e implementar no APP Saúde
É preciso ver se é possível fazer a medição dos batimentos cardíacos no aplicativo.
A tela já está implementada, porém a parte funcional ainda precisa ser feita.
Eu achei o seguinte link que pode dar um norte para a realização desta tarefa:
https://freesoft.dev/program/106909502
A partir do repositório do app-covid, "copiar e colar" algumas telas para o aplicativo app-sae. Em linhas gerais, o que eu acho que vale a pena ser copiado é o seguinte:
Estilo visual (ícones, imagens, etc)
Tela inicial (que será depois do login no app-sae) com ícones grandes e que, quando clicados, levam para as telas do app
Copiar as telas "Onde procurar atendimento", "Sobre Covid-19", "Medidas de prevenção" e "Atendimento emergencial". Acho que essas telas tem vários elementos visuais e de conteúdo que podemos usar para o nosso app do sae.
A pergunta é a seguinte:
Como tem sido a qualidade da sua alimentação nos últimos 7 dias?
As respostas possíveis são escolhidas em uma escala de 5 carinhas, da mais triste
Criar a tela que mostra as estatísticas do usuário conforme as respostas aos questionários da issue #20.
Será direcionada pelo card "Minhas Estatísticas" do print abaixo.
Implementar a tela de dicas de alimentação.
A tela terá uma sequência de itens, que podem ser:
Cada um desses itens deve possuir um id único. Esse id poderá ser utilizado para que o usuário chegue até essa página de dicas e seja levado diretamente para esse conteúdo (eu acho que a forma mais fácil de implementar isso é usando o id do item como uma âncora <a>
, assim quando a url /pagina-dica#4
for acessada, por exemplo, o app cai diretamente na seção cujo id é 4.
O conteúdo dessa tela pode ser dinâmico e carregado a partir de uma api/planilha online. Inicialmente esse conteúdo pode ser lido de um json dentro do próprio aplicativo. Independente de onde essa informação esteja, ela deve estar disponível para todas as outras partes do aplicativo através do nome da categoria dessa página. Por exemplo, se a página a for dicas de atividade física, a categoria pode ser activity
. Outras páginas do app poderão obter uma lista dos itens existentes nessa categoria, assim eles podem mostrar dicas e sugestões.
A pergunta é a seguinte:
Como tem sido a qualidade do seu sono nos últimos 7 dias?
As respostas possíveis são escolhidas em uma escala de 5 carinhas, da mais triste
Dentro de acompanhamento criar uma nova aba para que o usuário possa registrar como foi seu dia. Como se fosse uma espécie de diário.
Não sei se foi algo que sempre foi assim, ou se foi algo que quebrou com o tempo, mas a resposta da pergunta "Como você está se sentindo agora?", não faz com que a paginação seja ocultada.
O questionário temático de atividade física mede o comportamento do usuário em relação à prática de esportes/atividades físicas. A pergunta é a seguinte:
Quantas vezes praticou atividade física nos últimos 7 dias?
As respostas possíveis são:
Depende de #16
Depois que a estrutura inicial da tela de questionário de bem estar for implementado, o questionário de bem estar deve ser adicionado. O questionário completo está listado abaixo:
(Sintomas físicos) Nos últimos 7 dias você percebeu algum sintoma a seguir, associado a ansiedade?
(Sintomas físicos)Nos últimos sete 7 dias você evitou ou pensou em evitar alguma situação por medo/ansiedade? Marque as opções abaixo que representam o seu estado de humor na maioria dos dias, nos últimos 7 dias
(Sintomas físicos) Nos últimos sete dias sentiu-se preocupado excessivamente ou angustiado pela proximidade de algo ruim acontecer?
(DSM) Nos últimos sete dias sentiu-se ansioso ou preocupado em excesso?
Se sim, próxima pergunta:
Se marcou alguma das anteriores (DSM), próxima pergunta:
Você percebe que os sintomas anteriores atrapalham significativamente uma ou mais áreas da sua vida (social, profissional e/ou acadêmica)?
Assinale as opções abaixo em relação ao uso de substâncias psicoativas:
Muito provavelmente cada uma dessas perguntas, no futuro, apresentará uma escala de frequência quando respondida. Por exemplo, se o usuário escolheu a resposta 2 de uma pergunta qualquer, logo abaixo da resposta aparece uma caixinha do tipo "Com que frequência?" com algumas opções para o usuário escolher. A implementação disso não faz parte dessa tarefa, mas talvez seja útil manter isso em mente durante o planejamento da implementação.
Alterar logo do app com as novas: LINK
Precisamos pedir o consentimento das pessoas que forem responder o questionário e a barra no topo do menu principal, acho que é valido colocar um link com todos os termos, e uma opção de aceitar, que deixa a pessoa utilizar e outra de recusar que desabilita as funções de resposta.
Mudanças sugeridas pelo Robison:
Deveria ter uma aba que você pode ver as respostas que você deu, separado em dias e turnos, das perguntinhas que aparecem pro SAE e o "como você está se sentindo agora?". Isso poderia estar dentro da parte "estatísticas";
A partir disso, o item estatísticas deverá conter um calendário contendo as informações que foram registradas;
Talvez esse link ajude: https://framework7.io/docs/calendar#examples
Se possível tentar fazer algo parecido com o GitHub; Acho que pode ser bem útil para o SAE, mostrar a frequência no registro de informações;
Referência:
practice-uffs/programa#1136
Implementar a tela de dicas lazer.
A tela terá uma sequência de itens, que podem ser:
Cada um desses itens deve possuir um id único. Esse id poderá ser utilizado para que o usuário chegue até essa página de dicas e seja levado diretamente para esse conteúdo (eu acho que a forma mais fácil de implementar isso é usando o id do item como uma âncora <a>
, assim quando a url /pagina-dica#4
for acessada, por exemplo, o app cai diretamente na seção cujo id é 4.
O conteúdo dessa tela pode ser dinâmico e carregado a partir de uma api/planilha online. Inicialmente esse conteúdo pode ser lido de um json dentro do próprio aplicativo. Independente de onde essa informação esteja, ela deve estar disponível para todas as outras partes do aplicativo através do nome da categoria dessa página. Por exemplo, se a página a for dicas de atividade física, a categoria pode ser activity
. Outras páginas do app poderão obter uma lista dos itens existentes nessa categoria, assim eles podem mostrar dicas e sugestões.
Iniciar após a conclusão da tarefa #11
Conforme implementado os ícones da tela inicial, criar rotas para cada ícone (botão) que leve para uma nova tela em branco nesse primeiro momento.
A única informação da tela será o header, trocar "Coronavírus Chapecó SC" para o título do ícone da tela principal.
O aplicativo terá uma tela de dicas para cada categoria de interesse, sendo elas atividade física, lazer, sono e alimentação. Independente da tela, o conteúdo mostrado será sempre uma lista de itens, sendo que alguns possuem só texto, outro texto e imagem, outros texto, imagem e vídeos. Cada um dos ítens mostrados possuem um id, que pode ser usado para que o usuário chegue até essa seção da página de dicas se clicar em algum link em qualquer local do app.
O objetivo dessa tarefa é controlar a implementação de todas as páginas de dicas do aplicativo, que serão as seguintes:
Cada uma dessas telas é acessada a partir da página inicial do app (após login). Cada tela tem um ícone na página inicial.
O funcionamento dessas telas será muito parecido com as telas de conteúdo do app-uffs-virtual. Podemos utilizar planilhas online para a gerência desses conteúdos, se isso for mais fácil.
O objetivo dessa tarefa é implementar um questionário rápido de resposta sobre o estado emocional da pessoa naquele momento. Esse questionário é mostrado na tela inicial do aplicativo (após logado), no começo da página (ou seja, antes de todos os ícones das outras páginas que o usuário tem acesso).
O questionário terá o seguinte formato:
Ao clicar em uma das carinhas de resposta, todas as carinhas somem e, no lugar onde estava o questionário, aparece alguma mensagem do tipo ("Obrigado pela sua resposta 😃"). Se o usuário sair da página inicial do aplicativo e, em seguida, retornar para a página inicial, o questionário fica disponível para resposta de novo. Se o usuário permanecer na tela inicial depois de responder o questionário, a resposta de "Obrigado.." some depois de 30 segundos, e o questionário é mostrado novamente.
As respostas desse questionário devem ser salvas localmente em um banco de dados (também está no objetivo da tarefa definir essa forma de armazenamento e como as tuplas de resposta serão salvas). As respostas das carinhas começam em zero (mais triste) até 5 (mais feliz). A tupla deve ser guardada com o valor da resposta e a data atual.
Mudança sugerida pela Morgana:
"Na aba da meditação guiada acho que a gente pode tentar uma configuração diferente, seria basicamente separar cada uma das meditações e separando elas a gente poderia ter um textinho explicando cada uma."
A partir disso, o menu da aba de meditação guiada deverá ficar parecido com as imagens que estão dispostas no comentário da issue.
O questionário temático assíncrono aparece para o usuário de tempos em tempos na tela inicial do aplicativo (após login). Ele também pode ser respondido a qualquer momento por vontade do usuário. Essa issue centraliza a implementação do questionário temático no aplicativo, bem como cada uma de suas categorias.
O progresso dessa issue se dará pela conclusão das sub issues vinculadas a ela.
Independente de qual questionário seja implementado, todos seguem o mesmo formato. A primeira forma de resposta é através da visualização do questionário na tela inicial do aplicativo, por exemplo:
Para alguns questionários, a resposta é um "Sim" ou "Não". Para outros a resposta é uma escala de "carinhas". Para questionários cuja resposta sejam "Sim" ou "Não", a escolha da resposta tem consequências. Se o usuário escolher "Sim", uma animação de confete é mostrada na tela, no formato dessa lib.
Se o usuário responder não, a resposta é salva e um card de dica pode ser mostrado logo abaixo. Utilizando o exemplo da pergunta acima (praticou atividade física), o seguinte poderia aparecer se o usuário respondesse não:
A lista de sugestões possíveis é variável para cada categoria (por exemplo, atividade física terá um conjunto de sugestões, alimentação terá outro conjunto, etc). Ao escolher uma dessas opções, o usuário é levado até a tela de dicas, na seção daquele conteúdo em específico.
Tarefa depende da conclusão da logo.
Copiar e ajustar o conteúdo do README do projeto app-practice para esse repositório (app-sae). A parte que cita o nome dos desenvolvedores e coordenador pode ser removida.
Alterar a cor da barra de notificação no aplicativo, para corresponder ao tema escolhido pelo usuário.
Eventualmente o aplicativo evoluirá para uma ferramenta completa de monitoramento emocional para políticas públicas. Um elemento importante disso é termos uma tela de coleta do estado emocional. O objetivo dessa tarefa é implementar a versão inicial dessa tela (no próprio aplicativo, não um mockup).
A tela deve conter os seguintes elementos:
A página onde essa tela será implementada deve se chamar affect-input.html
(a rota pode ser affect-input
). Ela deve conter obrigatoriamente o seguinte:
Definir quais conteúdos aparecerão com e sem login.
E fazer a parte do login funcionar.
Se ainda não existir, criar no aplicativo uma tela para Meditação Guiada (se eu não me engano, essa tela já existe, algo com meditação). Nessa tela devem existir players de audio (aqueles que tem a barrinha de progresso e um botão de play), um para cada um dos arquivos de audio da meditação guiada (na pasta Entrada dessa issue).
Para cada audio na tela, pode-se colocar alguma imagem/ícone relacionado com o tema. A página também deve conter, no começo dela, uma aplicação sobre os audios:
Acalme-se ouvindo essas meditações guiadas produzidas especialmente para você por Alan David Evaristo Panizzi, psicologo do Instituto Federal Santa Catarina, campus Chapecó/SC.
Implementar a tela de dicas.
A tela terá uma sequência de itens, que podem ser:
Cada um desses itens deve possuir um id único. Esse id poderá ser utilizado para que o usuário chegue até essa página de dicas e seja levado diretamente para esse conteúdo (eu acho que a forma mais fácil de implementar isso é usando o id do item como uma âncora <a>
, assim quando a url /pagina-dica#4
for acessada, por exemplo, o app cai diretamente na seção cujo id é 4.
O conteúdo dessa tela pode ser dinâmico e carregado a partir de uma api/planilha online. Inicialmente esse conteúdo pode ser lido de um json dentro do próprio aplicativo. Independente de onde essa informação esteja, ela deve estar disponível para todas as outras partes do aplicativo através do nome da categoria dessa página. Por exemplo, se a página a for dicas de atividade física, a categoria pode ser activity
. Outras páginas do app poderão obter uma lista dos itens existentes nessa categoria, assim eles podem mostrar dicas e sugestões.
Criar uma descrição de todas as telas e o seu funcionamento para guiar o desenvolvimento do app.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.