A Stack Tecnológica
Antes de montar a estrutura do projeto, vale deixar explícito o que vamos usar e por quê.
Backend: TypeScript com Express e PostgreSQL. O TypeScript traz tipagem estática sobre o JavaScript — erros de tipo aparecem no editor, não em produção. O Express é um framework HTTP minimalista: poucas abstrações, comportamento previsível. E o PostgreSQL é um banco de dados relacional maduro, com suporte robusto a constraints, transações e tipos de dados.
Frontend Web: React com TypeScript. O React é a biblioteca de componentes mais usada no mercado. A ideia central — descrever o que a interface deve ser para um dado estado, e deixar o framework descobrir como atualizar o DOM — é o padrão que todas as alternativas modernas seguem (Vue, Angular, Svelte). Aprender React é aprender o modelo mental que se aplica a qualquer uma delas.
Frontend Mobile: React Native com Expo. O React Native permite construir aplicativos nativos para Android e iOS usando os mesmos conceitos de componentes do React. O Expo simplifica o setup — sem precisar instalar Android Studio ou Xcode para os primeiros passos. E como web e mobile compartilham TypeScript, parte da lógica (validação, formatação, chamadas de API) pode ser reaproveitada.
Essa stack não é a única possível. Existem alternativas excelentes para cada camada. A escolha reflete um equilíbrio entre adoção no mercado, qualidade da documentação e coesão entre as partes — web e mobile falando a mesma linguagem reduz a carga cognitiva.