CEVIU Logo
Voltar

Como a equipe do Conductor dobrou a performance do app com React, Tauri e Bun

Aprofundamento CEVIU

Aprofundamento

O Conductor não dobrou a performance por acaso: é o resultado de uma cadeia de decisões técnicas que convergem para um padrão emergente em 2026, aplicações desktop web-native com arquitetura local-first, onde o SQLite não é só um banco, mas a fonte de verdade imutável. Isso elimina dependência de rede no caminho crítico, como já fazem Linear e Notion, mas com um diferencial: o Tauri v2, que agora suporta iOS/Android, permite escalar essa mesma lógica para mobile sem reescrita. A migração para Bun não foi só por velocidade, foi pela integração nativa com agentes de IA, já que a Anthropic o adquiriu em dezembro de 2025 para alimentar o Claude Agent SDK. Isso explica por que os processos de agente foram priorizados na reescrita: eles agora rodam em um runtime otimizado para execução paralela e baixa latência, com suporte embutido a SQL e Redis.

O TanStack Router entrou não apenas como substituto do React Router, mas como peça-chave de estabilidade de referências, algo crítico quando o React 19.2 já traz memoização automática via React Compiler. Ou seja, a equipe do Conductor usou o router para evitar remontagens desnecessárias *enquanto* deixava o compilador lidar com o resto da otimização de re-renders. Já a virtualização com react-virtuoso foi escolhida sobre react-window porque o Conductor lida com listas dinâmicas de tarefas com alturas variáveis (como blocos de markdown ou embeds), e o virtuoso resolve isso sem configuração manual de estimativas, um ganho real de DX e manutenibilidade.

O que mudou

Em maio, o CEVIU destacou a migração da Lovable para o TanStack Start com SSR + IA integrada, mas o Conductor seguiu outra direção: manteve o modelo client-side puro, porém com SQLite local como fonte de verdade e sincronização em segundo plano. Enquanto a Lovable apostou em renderização no servidor para crawlers, o Conductor priorizou latência zero para o usuário final, e conseguiu isso ao remover a verificação de git do caminho crítico, algo que a cobertura anterior sobre GitHub Issues também fez, mas com IndexedDB. A diferença está na camada de persistência: o Conductor usa SQLite com WASM no navegador (via Tauri bridge), enquanto o GitHub ainda depende de cache híbrido. Também há evolução técnica clara no uso do TanStack: em 2026-05-11, falamos da reengenharia do React para o TanStack Start; agora, o Conductor usa o TanStack Router *fora* do Start, provando sua maturidade como biblioteca independente.

Por que isso importa

Essa reescrita mostra que performance não é mais só sobre código mais rápido, é sobre alinhar stack, arquitetura e experiência do desenvolvedor. O Bun reduziu o tempo de inicialização dos agentes em 7x, o Tauri v2 cortou o consumo de RAM pela metade comparado à versão anterior, e o react-virtuoso eliminou picos de memória em listas com milhares de itens. Para devs, isso significa menos tempo depurando re-renders e mais tempo construindo funcionalidades. Para empresas, é um caminho viável para apps desktop leves, seguros (Rust no backend) e com atualizações quase instantâneas, sem depender de infraestrutura centralizada nem de internet contínua.

Linha do tempo

  1. CEVIU publica explicação sobre arquitetura local-first como mudança de paradigma

  2. CEVIU detalha reengenharia do React para TanStack Start, com redução de 9KB gzip

  3. CEVIU analisa otimização de navegação no GitHub Issues com cache IndexedDB e preaquecimento

  4. CEVIU destaca Linear como exemplo prático de local-first com SQLite no navegador

  5. CEVIU reporta migração da Lovable para TanStack Start com SSR e IA integrada

  6. Conductor anuncia reescrita com React, Tauri, Bun e virtualização para dobrar performance

Perguntas frequentes

Por que o Conductor escolheu SQLite como fonte da verdade em vez de IndexedDB ou outro banco?

SQLite oferece transações ACID completas, consultas SQL nativas e desempenho previsível em leituras submilisegundo, algo que IndexedDB não garante. Em 2026, com WASM e Tauri, o SQLite roda localmente com sincronização em segundo plano, tornando-o ideal para aplicações local-first que exigem consistência forte, como ferramentas de produtividade.

O que muda na prática ao migrar de Node.js para Bun em um app desktop como o Conductor?

A mudança impacta três frentes: inicialização (4–10x mais rápida), throughput de operações síncronas (como processamento de agentes), e tempo de instalação de dependências (até 17x mais rápido que Yarn). No Conductor, isso se traduz em tempos de resposta imediatos ao acionar scripts de IA, mesmo offline.

React.memo ainda é necessário com o React 19.2 e o React Compiler?

Não na maioria dos casos. O React Compiler faz memoização automática em tempo de compilação. Mas o Conductor continuou usando React.memo em componentes críticos com props complexas ou callbacks não triviais, uma forma de sinalizar intenção explícita ao time, além de garantir compatibilidade com ferramentas de análise estática.

Por que usar um shim no bridge do Tauri para o Chrome DevTools, em vez de esperar suporte nativo?

As React DevTools não funcionam no WebKit (usado pelo Tauri no macOS/Linux) porque dependem de APIs do V8. Criar um shim no invoke bridge permitiu interceptar chamadas entre frontend e Rust, injetando dados de profiling no formato esperado pelo Chrome, uma solução leve, testável e que não exige fork do Tauri ou espera por upstream.

Avalie este artigo:
Compartilhar:
Categoria
CEVIU Web Dev
Publicado
08 de junho de 2026
Fonte
CEVIU Web Dev

Quer receber mais sobre CEVIU Web Dev?

Conteúdo curado diariamente, direto no seu e-mail.

Conteúdo curado diariamenteDiversas categoriasCancele quando quiser