Bottle POS (Quilt Software / PosNation): Electron 35 e React 19 para 3.000+ varejistas
60 versões em 11 semanas, em pipeline paralelo para Windows, macOS e Linux
Impressão térmica ESC/POS silenciosa, display do cliente e detecção de offline
Atualização sem ação do usuário: servidor de releases próprio, canais e rollout gradual
01
Reconhece esse cenário?
O sistema web do caixa para de vender quando a internet cai, e a fila da loja cresce.
A impressora térmica só funciona com um plugin de navegador, e cada atualização do navegador quebra a impressão.
Atualizar o aplicativo exige acesso remoto máquina por máquina, e cada loja roda uma versão diferente.
O time domina web, e ninguém quer manter três bases de código para Windows, macOS e Linux.
02
O que entregamos
Aplicativo para Windows, macOS e Linux
Aplicativo para Windows, macOS e Linux
Uma base de código em Electron e React gera os instaladores dos três sistemas, e um só time mantém o aplicativo em todas as máquinas.
Integração com hardware
Integração com hardware
Impressão térmica ESC/POS silenciosa, sem plugin de navegador nem caixa de diálogo, display do cliente, descoberta de impressoras e ferramenta de teste de impressão.
Operação offline
Operação offline
Detecção de queda de conexão, armazenamento local e sincronização quando a internet volta, com as regras de conflito definidas na especificação.
Atualização automática
Atualização automática
Servidor de releases, canais de distribuição e rollout gradual, para atualizar todas as máquinas sem visita técnica e sem ação do usuário.
Ponte com sistemas existentes
Ponte com sistemas existentes
Pontes entre o aplicativo desktop e o seu sistema web ou a sua API, com controle de acesso por perfil, para reaproveitar o que já funciona sem reescrever.
Pipeline de build e testes
Pipeline de build e testes
Builds paralelos para os três sistemas, testes automatizados e gates de CI, para publicar versões novas com frequência e sem surpresas.
Bottle POS: aplicativo desktop em Electron 35 e React 19 para um PDV em nuvem do varejo de bebidas, com atualização zero-touch registrada em 5 ADRs e pontes com o PDV web legado.
3.000+varejistas e US$ 2,7 bi+ em vendas anuais
60versões em 11 semanas, para Windows, macOS e Linux
61handlers de IPC: impressão térmica silenciosa, display do cliente e detecção de offline
Conversa inicial gratuita · Resposta em até 1 dia útil
04
Para quem é e para quem não é
Desenvolvimento de aplicativos desktop é a construção de software instalado em Windows, macOS e Linux para tarefas que o navegador não resolve bem: integração com impressoras e displays, operação sem internet e uso contínuo no balcão. Contrate quando a operação depende de hardware local, precisa seguir funcionando offline ou exige controle das atualizações em cada máquina.
Indicado para
Redes de varejo que precisam de PDV com impressora térmica, display do cliente e operação offline.
Times de operações e TI que mantêm ferramentas internas com acesso a arquivos, dispositivos ou redes locais.
Empresas de software que querem levar um sistema web existente para o desktop sem reescrevê-lo.
Empresas que precisam distribuir e atualizar o mesmo aplicativo em centenas ou milhares de máquinas.
Não indicado para
Sistemas que rodam bem no navegador e não usam hardware local: um aplicativo web custa menos para manter.
Jogos, edição de vídeo e software que exige desempenho gráfico nativo: Electron não é a ferramenta certa.
Drivers e software embarcado em dispositivos: trabalhamos na camada de aplicação.
Aplicativos nativos em .NET ou Qt: nossa experiência em produção no desktop é com Electron e React.
05
Como funciona e prazos
01
Diagnóstico
Diagnóstico
Mapeamos a operação, o hardware, os sistemas existentes e o parque de máquinas. Você recebe a recomendação entre desktop e web, a arquitetura, a estratégia de atualização, o plano e a estimativa.
02
Especificação e ADRs
Especificação e ADRs
Decisões sobre atualização, operação offline e acesso a hardware registradas em ADRs, com critérios de aceite por fluxo. Você aprova as decisões antes do código.
03
Prova de conceito
Prova de conceito
O maior risco primeiro: o aplicativo empacotado, conversando com o hardware real e com o seu sistema. Você recebe instaladores de teste para validar na loja ou no escritório.
04
Produção
Produção
Demais fluxos, atualização automática, pipeline para os três sistemas e testes automatizados. Você recebe os instaladores, o servidor de releases e a documentação de operação.
05
Rollout e evolução
Rollout e evolução
Distribuição gradual por canais, acompanhamento das versões em campo e novas funcionalidades, em retainer mensal ou com transferência para o seu time.
Formatos típicos de contratação deste serviço
Escopo
Prazo típico
Modelo de contratação
DiagnósticoOperação, hardware, arquitetura, estratégia de atualização e estimativa
1–2 semanas
Projeto de escopo fechado
Prova de conceitoAplicativo empacotado, integrado ao hardware e ao seu sistema
2–4 semanas
Projeto de escopo fechado
ProduçãoAplicativo completo, atualização automática e pipeline para os três sistemas
6–12 semanas
Escopo fechado ou time & materials com teto
Evolução contínuaNovas versões, novos dispositivos e rollout por canais
Contínuo
Retainer mensal fracionado
Prazos são faixas típicas. O diagnóstico define o escopo e a estimativa de cada projeto; o contrato pode ser em reais (BRL) ou dólares (USD).
Conversa inicial gratuita · Resposta em até 1 dia útil
06
Detalhes técnicos
Como usamos IA com governança, o comparativo de decisão e a stack
IA com governança
No desktop, a IA acelera a construção sob as mesmas regras de qualquer projeto nosso e só entra no produto quando há um caso de uso claro.
Na construçãoAgentes de código (Claude Code, Codex, Cursor, Copilot, OpenCode) implementam handlers, telas e testes a partir de specs aprovadas.
O que o humano revisaAs decisões de arquitetura registradas em ADRs e cada merge passam por revisão humana sênior.
Quality gatesTestes automatizados, gates de CI e hooks de pre-commit barram regressões antes de cada versão.
IA no aplicativoAssistentes e automações chamam o modelo por meio de uma API, com guardrails e registro de cada chamada.
Dados locaisO que fica na máquina só sai dela quando a especificação prevê, e nunca é usado para treinar modelos.
Comparativo de decisão
Role para o lado para ver mais
Aplicativo web, desktop com Electron ou desktop nativo: quando usar cada um
Critério
Aplicativo web
Desktop com Electron
Desktop nativo
Quando faz sentido
Uso no navegador, sem hardware local
Hardware local, operação offline e time com experiência web
Desempenho gráfico ou integração profunda com um sistema operacional
Hardware local
Limitado às APIs que o navegador expõe
Impressoras, displays e arquivos acessados via Node.js
Acesso completo às APIs do sistema operacional
Funcionamento offline
Possível com service workers, dentro dos limites do navegador
Armazenamento local e sincronização no próprio aplicativo
Armazenamento local e sincronização, implementados por plataforma
Atualização
Imediata: basta publicar no servidor
Auto-update com canais e rollout gradual
Instaladores ou lojas de cada sistema
Base de código e tamanho
Uma base web; nada para instalar
Uma base web para os três sistemas; embute o Chromium, com instalador maior
Em geral, uma base por sistema; binários menores
Stack e integrações
Electron
React
TypeScript
Node.js
ESC/POS
Windows
macOS
Linux
Laravel
Jest
Playwright
GitHub Actions
Docker
PostgreSQL
MySQL
07
Perguntas frequentes sobre Aplicativos desktop
Ainda vale a pena desenvolver um sistema desktop ou é melhor web?
Web é o padrão; desktop vale a pena em três casos: integração com hardware local, operação que não pode parar sem internet e necessidade de controlar a versão em cada máquina. Se nenhum deles se aplica, um aplicativo web custa menos para manter. É comum combinar os dois: a interface web existente dentro de um shell desktop que cuida do hardware.
O mesmo aplicativo roda em Windows, macOS e Linux?
Sim: com Electron, uma única base de código gera instaladores para os três sistemas. No Bottle POS, app desktop da Quilt Software / PosNation, publicamos 60 versões em 11 semanas por um pipeline paralelo para Windows, macOS e Linux. Windows e macOS pedem instaladores assinados; a assinatura entra no pipeline com os certificados da sua empresa.
O aplicativo integra com impressora térmica e display do cliente?
Sim. No desktop, o aplicativo fala direto com o hardware: impressão térmica ESC/POS silenciosa, sem caixa de diálogo, display do cliente e descoberta de impressoras. No Bottle POS, a comunicação entre a interface e o sistema passa por 61 handlers de IPC, e há uma ferramenta de teste de impressora térmica. Outros dispositivos são avaliados no diagnóstico, com o equipamento real.
Como o aplicativo é atualizado nas máquinas dos usuários?
Por atualização automática, sem ação do usuário: o aplicativo consulta um servidor de releases, baixa a nova versão e a aplica. Canais separam as versões estáveis das de teste, e o rollout gradual libera a atualização para uma parte das máquinas antes de todas. No Bottle POS, essa estratégia zero-touch foi registrada em 5 ADRs e usa um servidor de releases próprio em Laravel 12.
O aplicativo funciona sem internet?
Sim, no que o projeto definir: o aplicativo detecta a queda de conexão, segue operando com dados locais e sincroniza quando a internet volta. O que funciona offline é decidido na especificação, fluxo a fluxo, porque operações como pagamento com cartão dependem de serviços externos. No Bottle POS, a detecção de offline faz parte do aplicativo.
Dá para transformar meu sistema web em aplicativo desktop?
Sim: um shell em Electron carrega o sistema web existente e acrescenta o que o navegador não faz, como impressão silenciosa, acesso a dispositivos e atualização controlada. No Bottle POS, bridges em JavaScript ligam o shell desktop ao PDV web legado, sem reescrever a plataforma. O diagnóstico verifica autenticação, sessões e os pontos do sistema web que precisam de ajuste.
Electron ou Tauri para um aplicativo desktop corporativo?
Electron é a escolha mais previsível quando o time domina web e o aplicativo precisa se comportar igual nos três sistemas, porque embute o próprio Chromium e o Node.js. Tauri usa o webview de cada sistema e um núcleo em Rust, o que gera instaladores menores, com diferenças de renderização entre sistemas. Nossa experiência em produção é com Electron.
Loja B2B ou B2C que segue as regras do seu negócio.
Ver serviço
Vamos avaliar o seu caso de desktop
Na conversa inicial, olhamos a operação, o hardware e o sistema atual e dizemos com franqueza se o caso pede um aplicativo desktop, um aplicativo web ou os dois combinados.