Não é “tolerante a offline”. É offline-first.
O dispositivo é a fonte primária de verdade — a rede é uma otimização, não um requisito.
Dispositivo como fonte primária
Toda operação grava no SQLite local primeiro. A interface nunca fica esperando a rede.
Fila de mutações durável
As escrituras enfileiram e reconciliam em background, bidirecional, sem perder dados em redes instáveis.
Funciona 100% sem rede
O app não trava offline; continua funcionando e sincroniza assim que reconecta.
Ordenação server-authoritative
Ordem global + write checkpoints garantem convergência — nunca confia no relógio do dispositivo.
Um pedido — do campo ao aprovado, sem esperar a rede
Acompanhe um pedido real: criado offline, sincronizado, aprovado pelo supervisor e de volta ao vendedor. Tudo automático.
Na rua, no celular ou no notebook, ele registra o pedido do cliente — com 18% de desconto.
Uma engine. A sua linguagem.
O mesmo core em Rust, exposto por SDKs idiomáticos via FFI, JNI, N-API e WASM.
API comum estável, SDKs idiomáticos e magros sobre o mesmo core Rust.
Sincroniza com o banco que você já tem
Captura de mudanças via CDC log-based (ex.: replicação lógica do Postgres), com fallback trigger/outbox por capability-probe.
Da gravação local até a convergência durável
Um data plane no hot path, um control plane só de metadados e um transporte incremental que move apenas o que mudou.
Dispositivo grava local
O app grava no SQLite local e enfileira a mutação — na hora, com ou sem rede.
Change capture
CDC nativo (log-based) quando o banco suporta, com fallback trigger + outbox caso contrário.
Core Rust
Um data plane (crossfly-sync-service) no hot path mais um control plane que cuida só dos metadados, fora do hot path.
Transporte incremental
Protobuf/gRPC sobre TLS 1.3 para os deltas, bulk/snapshot colunar (Apache Arrow/Parquet, zstd). Anexos vão em plano separado — referência por content_hash com storage plugável (S3/MinIO/Azure Blob + CDN).
Onde o CrossFly Sync vai além
Como se compara, com honestidade
| CrossFly Sync | PowerSync / ElectricSQL | Realm / Couchbase / RxDB | |
|---|---|---|---|
| CDC multi-banco | ✓ | — | — |
| Schema-per-tenant dinâmico | ✓ | — | — |
| Isolamento cripto por tenant | ✓ | — | — |
| Offline-first real com fila durável | ✓ | ✓ | ◑ |
✓ oferecido · ◑ parcial / varia por produto · — não oferecido. A comparação reflete nossa leitura das capacidades típicas e pode mudar conforme esses produtos evoluem.
Open-core, cobrado por dispositivo ativo
As partes sobre as quais você constrói são abertas; o servidor é source-available e converte para uma licença permissiva com o tempo.
SDKs, protocolo e specs
Apache-2.0 — os SDKs, o protocolo e as specs sobre os quais você constrói são de licença permissiva.
Servidor source-available
FSL-1.1 — converte para licença permissiva após 2 anos. Não é AGPL, não é SSPL.
Cobrança por dispositivo ativo
Você paga por dispositivo ativo sincronizado — alinhado ao uso real, não a assentos ou cores.