Pular para o conteúdo

ADR-0001 Framework de UI

Biblioteca de UI padrão da empresa para todas as apps web — React.

Decisão
ReactConstruir a app
Estado
Aceite
Data
Âmbito
Predefinição da empresa para todas as novas apps

Todos os produtos que construímos precisam de uma camada de UI. Uniformizar num único framework de UI significa componentes partilhados, um perfil de contratação partilhado, conhecimento partilhado e nenhuma rediscussão em cada projeto. A escolha condiciona a decisão do framework de aplicação (ADR-0002) e, mais tarde, a decisão de estilos.

A opção dominante. O maior ecossistema, a maior bolsa de recrutamento, e todos os principais frameworks de aplicação suportam-no como alvo de primeira classe.

Prós

  • O maior ecossistema: bibliotecas de componentes, ferramentas, documentação e respostas existem para tudo
  • A maior bolsa de recrutamento; a maioria dos candidatos não precisa de período de adaptação
  • Suporte de primeira classe em todos os meta-frameworks (TanStack Start, Next.js, Remix, Astro)
  • Funcionalidades concorrentes maduras; o conhecimento de server components transfere-se entre frameworks

Contras

  • Sem uma solução full-stack oficial por si só — precisa de um meta-framework
  • Volatilidade do ecossistema (embora a estabilizar)
  • Verboso em comparação com as alternativas compiladas

Framework progressivo com uma excelente DX baseada em single-file components.

Prós

  • Curva de aprendizagem suave, documentação excelente
  • O Nuxt é uma solução full-stack coerente
  • O modelo de reatividade é simples e explícito

Contras

  • Bolsa de recrutamento e ecossistema mais pequenos do que os do React
  • O TanStack Start é React-first — escolher Vue quebraria a direção da stack
  • Menos bibliotecas de componentes de nível empresarial

Componentes compilados, boilerplate mínimo.

Prós

  • Menos boilerplate, excelente DX
  • Bundles pequenos, runtime rápido

Contras

  • A mais pequena bolsa de recrutamento das três
  • Lacunas no ecossistema para necessidades empresariais
  • O TanStack Start é React-first — quebra a direção da stack

Bons frameworks, mas bolsas de recrutamento de nicho e lacunas no ecossistema tornam-nos más predefinições para toda a empresa.

O React é o framework de UI padrão da empresa para todas as novas apps web.

É a base mais segura: o maior ecossistema, a maior bolsa de recrutamento, e é o alvo de primeira classe do TanStack Start (ADR-0002). O custo da verbosidade do React é amplamente compensado por nunca ficarmos bloqueados por uma biblioteca em falta ou por uma pergunta sem resposta.

Mais fácil: recrutamento, integração de novos membros, partilha de componentes entre produtos, integrações de terceiros (analytics, UIs de autenticação e pagamentos lançam primeiro SDKs React).

Mais difícil: nada de relevante — mas comprometemo-nos a acompanhar a evolução do React (compiler, server components) em vez de ficarmos presos a padrões antigos.

Do que abdicamos: dos bundles mais pequenos dos frameworks compilados (Svelte/Solid). Aceite — o tamanho do bundle não é o nosso estrangulamento; a velocidade da equipa é.