Lumelis Digital

Aplicativos local-first: dados, privacidade e uso offline

Antes de confiar a um aplicativo um trabalho que queira preservar, pergunte onde ele é armazenado, o que é enviado para outros lugares e como recuperá-lo. Local-first é uma abordagem de projeto útil, mas o rótulo sozinho não responde a todas essas perguntas.

O que significa local-first

O artigo de 2019 da Ink & Switch sobre local-first coloca a cópia principal dos dados no seu próprio dispositivo. Outros dispositivos e servidores ainda podem guardar cópias sincronizadas. A abordagem pode valer para programas instalados e aplicativos web. Executar um cálculo no navegador, por si só, não demonstra todos os princípios local-first.

Armazenamento local não resolve a privacidade

localStorage é um espaço do navegador onde um site pode guardar dados no seu dispositivo, como preferências. A orientação da OWASP sobre armazenamento no navegador explica que scripts maliciosos executados em uma página podem ler o localStorage dela. Guardar dados em um dispositivo não garante sua confidencialidade por si só. O processamento local também pode coexistir com sincronização, análise de uso e downloads de serviços externos. Confira o que o aplicativo declara armazenar e enviar, incluindo funções opcionais de compartilhamento ou sincronização.

Mantenha uma cópia que possa recuperar

Os dados salvos no navegador, incluindo localStorage, podem ser perdidos ao limpar os dados do site e, dependendo do navegador, devido às suas políticas de armazenamento (WebKit). A documentação da MDN sobre armazenamento no navegador explica que os dados de navegação privada costumam ser apagados quando a sessão privada termina. O armazenamento do navegador não deve ser sua única cópia de trabalho importante. As regras variam conforme o navegador, o dispositivo e a configuração de armazenamento do aplicativo.

Verifique as funções offline necessárias

O guia da MDN sobre service workers descreve como o uso de cache pode permitir aplicativos web offline. O funcionamento de uma aba já aberta não prova que o aplicativo possa ser recarregado ou reaberto sem conexão. Verifique o suporte offline para as ações de que realmente precisa.

  • Use dados de teste: Salve o trabalho importante separadamente antes de testar. Crie um exemplo descartável, recarregue a página e reabra o aplicativo para ver o que é mantido.
  • Teste a recuperação: Se houver exportação ou backup, teste com seu exemplo e confira se consegue abrir ou recuperar os dados salvos. Antes de recuperar, verifique se o aplicativo substituirá os dados que mantém naquele momento. Não prossiga se isso puder apagar trabalho que queira preservar. A sincronização sozinha não demonstra que seja possível recuperar uma versão anterior.
  • Teste offline: Com o exemplo, desconecte a rede e teste as ações necessárias, incluindo reabrir o aplicativo. Depois, reconecte e confira eventuais resultados de sincronização. Não faça esse teste na sua única cópia de trabalho importante.

Aplique as verificações na Lumelis

O seletor de idioma da Lumelis Digital pode salvar sua escolha explícita neste navegador quando o armazenamento está disponível. Essa preferência não é um backup do trabalho criado em uma ferramenta. Visite o catálogo de ferramentas da Lumelis para escolher uma função a avaliar e leia a política de privacidade para conhecer o tratamento de dados declarado pelo site. Avalie cada função separadamente: uma preferência salva não demonstra suporte offline nem ausência de análise de uso.

Anote o que funcionou na versão do aplicativo, no navegador e no dispositivo testados. Essas verificações práticas ajudam a decidir se uma função atende às suas necessidades; não certificam a segurança de todo o serviço.

Fontes e leituras complementares