# Tech Stack ## Stack selecionada ### Aplicação - Next.js 16 - React - TypeScript ### Estilo e UI - Tailwind CSS - shadcn/ui - Lucide Icons ### Dados e backend - PostgreSQL - Prisma ORM - Zod - React Hook Form ### Plataforma e serviços - Supabase Database - Supabase Auth - Supabase Storage ### Deploy recomendado - Vercel para a aplicação web - Supabase para base de dados, autenticação e ficheiros ## Justificação da stack A stack foi escolhida para maximizar: - rapidez de desenvolvimento - simplicidade arquitetural - boa legibilidade para agentes de IA - facilidade de manutenção - boa experiência para construir dashboards, formulários, listagens e workflows operacionais ## Princípios da arquitetura técnica - Uma única codebase full-stack - Frontend e backend no mesmo projeto - Regras de negócio isoladas da camada visual - Base de dados relacional como fonte de verdade - Validação partilhada e explícita - Preparação para crescer sem reescrever a base ## Decisões associadas - Não usar backend separado na V1 - Não usar microserviços na V1 - Não usar GraphQL na V1 - Não desenvolver app mobile nativa na V1 ## Componentes por responsabilidade ### Next.js Responsável por: - interface da aplicação - routing - páginas - server components - route handlers - server actions, quando fizer sentido ### Prisma Responsável por: - schema de dados - migrations - acesso type-safe à base de dados ### PostgreSQL Responsável por: - persistência principal - integridade relacional - consultas operacionais e relatórios simples ### Supabase Responsável por: - alojamento da base de dados PostgreSQL - autenticação base - storage para ficheiros e imagens, quando ativado ### Tailwind + shadcn/ui Responsáveis por: - consistência visual - rapidez na criação de UI - componentes reutilizáveis ### Zod + React Hook Form Responsáveis por: - validação - formulários previsíveis - redução de erros de input ## Dependências candidatas adicionais - TanStack Table para tabelas operacionais - date-fns para datas - clsx / tailwind-merge para composição de classes ## Itens adiados - filas assíncronas - Redis - serviços de eventos - arquitetura multi-tenant - monitorização avançada