Offline-first: por que apps de operação precisam funcionar sem internet

Campo, obra, fábrica e estrada não têm sinal garantido. Como projetar apps que trabalham 100% local e sincronizam sem perder dado — com um case real de 25 MB → 23 KB.

O mundo real não tem 5G em todo lugar

Talhão de fazenda, subsolo de obra, chão de fábrica, beira de pista: os lugares onde a operação acontece são exatamente os lugares onde o sinal falha. Um app de operação que depende de internet é um app que para a operação.

Offline-first inverte a premissa: o app trabalha 100% local — lê e grava no próprio aparelho — e trata a rede como um bônus que aparece de vez em quando para sincronizar.

Os três problemas que o offline-first resolve

  • Disponibilidade: o operador aponta, fotografa e consulta na hora, com ou sem sinal.
  • Integridade: nada se perde — o dado nasce no aparelho e é entregue quando a conexão volta, com garantia de que retry não duplica.
  • Velocidade: ler do banco local é instantâneo; o app não fica refém da latência da pior rede do dia.

O que muda na engenharia

Offline-first não é "colocar um cache". Muda o desenho: o banco local (SQLite, normalmente) vira a fonte primária da interface; toda escrita gera um evento a sincronizar; a sincronização precisa ser idempotente e resolver conflitos com regras de negócio explícitas — quem ganha quando dois aparelhos editam o mesmo registro?

E os dados que descem do servidor precisam caber no contexto: mandar tudo é a receita do app lento.

Case: de 25 MB para 23 KB

Num app agrícola em tablets industriais, o carregamento inicial baixava ~25 MB de dados geográficos. Reprojetamos o fluxo com uma camada intermediária em Go que prepara no servidor exatamente o que a tela precisa: a resposta caiu para ~23 KB, entregue em ~158 ms — e o restante vive em cache local.

A lição: o ganho não veio de "otimizar código", veio de reprojetar o fluxo de dados. Arquitetura antes de código, como sempre.

Quando adotar

Se a sua operação acontece longe do Wi-Fi — agro, construção, indústria, logística, saúde em campo — offline-first não é luxo técnico: é a diferença entre o app que a equipe usa e o app que a equipe abandona na primeira semana.

Vamos construir algo que funcione de verdade.

// conte seu problema — respondemos com um diagnóstico em até 1 dia útil