Executando verificação de segurança...
1

Pitch: Xpo Launchpad — Porque você merece mais do que uma pasta `utils` e uma oração

Quantas vezes você começou um projeto React Native do zero e, lá pela semana 3, estava refatorando tudo porque a pasta screens/ virou um caos orquestrado? Se você balançou a cabeça agora, você não está sozinho.

Apresento o Xpo Launchpad: um template de arquitetura para Expo que foi construído exatamente para resolver esse momento delicioso chamado dívida técnica prematura.


O que é isso, afinal?

É um esqueleto. Uma base. O tipo de coisa que você olha e pensa:

"Por que eu não tinha isso antes?"

O Xpo Launchpad é uma estrutura arquitetural opinada — e sim, toda boa arquitetura é opinada. Ele foi desenhado para dois tipos de dev:

  • O Júnior que quer entender como as coisas devem ser feitas (e não como elas acabam sendo feitas às 2h da manhã antes do prazo).
  • O Sênior que quer entregar valor no primeiro dia — não na terceira semana depois de discutir onde colocar o Context em uma call de refinamento que durou 1h30.

A estrutura que você sempre quis

O projeto abandona aquela abordagem "flat" onde tudo fica jogado junto como gaveta de meias. Em vez disso, ele abraça o conceito de módulos por domínio de negócio:

src/
  modules/     # Cada feature no seu próprio mundo
  app/         # Expo Router cuidando do roteamento, sem lógica vazando
  shared/      # Design System, tokens, utils — o que é de todo mundo

Dentro de cada módulo, você tem dois templates prontos pra guiar o padrão:

  • 🛡️ Adapter Template — Para aqueles módulos mais densos, com Clean Architecture, Interfaces explícitas e Adapters que protegem sua lógica de negócio de uma lib externa que pode mudar amanhã.
  • Service Template — Para o dia a dia: chamadas de API, hooks customizados limpos e React Query fazendo o trabalho pesado.

O que já vem de brinde

Porque você não deveria perder um dia inteiro configurando o básico:

  • React Query (TanStack) — Cache inteligente, estados de loading/error, sem gambiarra.
  • i18n configurado — Internacionalização do dia um. Seu app já nasce global.
  • Dark/Light Theme — Integrado desde a raiz do roteamento. Não é uma afterthought.
  • Husky + Commitlint — Seus commits bagunçados não entram mais no histórico. Você vai agradecer daqui a 6 meses.
  • Lint-Staged — ESLint e Prettier só nos arquivos que você tocou. Rápido e sem choro.
  • Smart Logger — Um sistema de logs inteligente com auto-masking de dados sensíveis. Porque console.log("senha: " + senha) é um pesadelo que acontece com todo mundo uma vez.

O Makefile: seu DevOps pessoal

Sabe aquele colega que tem todos os comandos na ponta da língua? O Makefile é esse colega, mas sem precisar de café:

make run          # Inicia o servidor Expo
make run-a        # Build Android direto no device
make lint-fix     # Formata tudo e cura os warnings
make test         # Jest, veloz e configurado
make add PKG=axios  # Adiciona dependência sem drama

Simples. Sem decorar 40 flags de CLI.


Build profissional com XPO CLI

Para o fluxo de build e versionamento, o template recomenda a XPO CLI — uma ferramenta que abstrai toda a orquestração do EAS Build em um único comando legível:

xpo build android --local --profile production --bump patch

Isso cuida do versionamento semântico, do buildNumber/versionCode no app.json, do backup automático e da submissão para as lojas. Em um comando. Você leu certo.


Segurança que você esqueceria de implementar

Dois padrões que todo mundo sabe que deveria seguir mas não segue:

  • __DEV__ com consciência — Use para isolar logs e mocks, mas lembre-se: não é bala de prata. Segredos no código continuam sendo segredos no bundle.
  • useRef para dados sensíveis — Senhas, tokens e PINs ficam silenciosos, fora da árvore de renderização e longe do React DevTools. Porque seu usuário merece.

Testes? Tem testes.

Estrutura de testes modular com três camadas:

  1. Unitários — Services e componentes de UI isolados.
  2. Integração — Hooks customizados envoltos pelos Providers reais do sistema.
  3. test-utils.tsx centralizado — O utilitário que injeta todos os Providers automaticamente, seguindo o padrão da React Testing Library. Seus testes vão espelhar a realidade do app.

O disclaimer honesto

Isso não é uma verdade absoluta. É um desenvolvedor tentando ajudar outros devs a começarem com uma base mais decente do que uma pasta components/ com 80 arquivos.

A arquitetura é opinada. Pode (e deve!) ser adaptada à sua realidade. Se você discordar de alguma decisão, ótimo — abre uma issue, manda um PR, ou só dá aquela estrela no GitHub se te ajudou.


Landing Page: Xpo Launchpad
GitHub: github.com/DavidLSousa/xpo-launchpad
XPO CLI: xpo-cli

Construído com 💜 por David Sousa — Open Source, MIT.


O palco está montado. Hora do show. 🎸

Carregando publicação patrocinada...
2

Meus 2 cents,

Parabens pela iniciativa !

Eh sempre interessante acompanhar projetos reais usando tecnologia para automatizar as tarefas.

Repositorio devidamente starreado e forkeado - obrigado por compartilhar !

Saude e Sucesso !


Este post foi favoritado via extensão TABNEWS FAVORITOS