Capítulo 01Turborepo
Um monorepo com regras de dependência
Os quatro apps Next.js e a API vivem no mesmo repositório, com Turborepo e pnpm workspaces. Apps importam pacotes; pacotes nunca importam apps. Dos apps de produto, só a API importa packages/db, então nenhum site toca o banco diretamente: regra de negócio e invalidação de cache ficam num lugar só.
Os apps Next.js nunca acessam o banco. Leem e escrevem pela API, com os tipos de packages/shared.
- packages/shared depende só de zod
- Cache do Turbo no CI: o que não mudou não roda de novo