| API Route |
Endpoint de servidor criado dentro do Next.js que responde a pedidos HTTP sem necessidade de servidor separado. Corre como função serverless na Vercel. |
| App Router |
Sistema de routing do Next.js 13+ baseado na estrutura de directórios, com suporte nativo a Server Components e layouts aninhados. |
| bcrypt |
Algoritmo de hashing criptográfico usado para armazenar palavras-passe de forma segura e irreversível. O factor de custo (12) determina a lentidão intencional do hash. |
| CDN |
Content Delivery Network — rede global de servidores que entrega assets (imagens, CSS, JS) a partir do ponto geograficamente mais próximo do utilizador. |
| CNPD |
Comissão Nacional de Protecção de Dados — entidade reguladora portuguesa responsável pela supervisão do cumprimento do RGPD. |
| CSR |
Client-Side Rendering — renderização de HTML feita no browser do utilizador usando JavaScript. Resulta em HTML vazio inicial (mau para SEO). |
| Cursor-based Pagination |
Técnica de paginação que usa o ID do último item como referência para a próxima página, mais eficiente que offset para grandes datasets. |
| DPA |
Data Processing Agreement — contrato celebrado com processadores de dados (Stripe, Resend, etc.) para garantir conformidade com o RGPD. |
| DX |
Developer Experience — qualidade da experiência de desenvolvimento, incluindo ferramentas, mensagens de erro claras e produtividade. |
| Edge Network |
Rede de servidores distribuída globalmente (como a Vercel) que executa código próximo dos utilizadores finais para reduzir latência. |
| Embedding |
Representação vectorial de texto ou dados que permite medir similaridade semântica — usado no match inteligente de animais. |
| JWT |
JSON Web Token — standard para transmissão segura de informação entre partes como token compacto, URL-safe e assinado digitalmente. |
| KPI |
Key Performance Indicator — métrica usada para avaliar o sucesso de um objectivo (ex: número de adopções por mês). |
| Middleware |
Código que é executado entre o pedido HTTP e a resposta. No Next.js, intercepta pedidos antes de chegarem às páginas para verificar autenticação. |
| ORM |
Object-Relational Mapping — camada de abstracção que permite interagir com a base de dados usando código TypeScript em vez de SQL directo. |
| PCI DSS |
Payment Card Industry Data Security Standard — norma de segurança para sistemas que processam dados de cartões de pagamento. Stripe é Level 1 (o mais elevado). |
| Prisma |
ORM moderno para Node.js e TypeScript com esquema declarativo, migrações automáticas e cliente type-safe gerado automaticamente. |
| Rate Limiting |
Mecanismo que limita o número de pedidos que um utilizador pode fazer num determinado período de tempo, prevenindo abusos. |
| React Hook Form |
Biblioteca para gestão de formulários em React com performance optimizada (evita re-renders desnecessários) e integração com Zod. |
| RGPD |
Regulamento Geral sobre a Protecção de Dados — legislação europeia que regula o tratamento de dados pessoais, em vigor desde Maio de 2018. |
| Server Component |
Componente React renderizado exclusivamente no servidor, sem JavaScript enviado para o cliente. Pode aceder directamente à base de dados. |
| Serverless |
Modelo de execução onde o código corre em funções geridas pelo fornecedor cloud (Vercel), escalando automaticamente sem gestão de servidor. |
| shadcn/ui |
Colecção de componentes React acessíveis e personalizáveis, construídos sobre Radix UI e Tailwind CSS. Copiados directamente para o projecto (não é uma dependência de pacote). |
| SSG |
Static Site Generation — geração de HTML no momento do build, servido directamente via CDN. Ideal para páginas que não mudam frequentemente. |
| SSR |
Server-Side Rendering — renderização de HTML feita no servidor a cada pedido, antes de ser enviada para o browser. Óptimo para SEO e dados dinâmicos. |
| Stripe |
Plataforma de pagamentos online que permite aceitar cartões de crédito, MBWay, SEPA e outras formas de pagamento. Certificado PCI DSS Level 1. |
| Stripe Payment Element |
Componente UI do Stripe que renderiza um formulário de pagamento seguro directamente no browser, suportando múltiplos métodos de pagamento. |
| TanStack Query |
Biblioteca para gestão de estado assíncrono e cache de dados do servidor em React. Anteriormente conhecida como React Query. |
| Type-safe |
Código onde erros de tipo são detectados em tempo de compilação (TypeScript), antes de a aplicação correr, eliminando uma classe inteira de bugs. |
| WCAG |
Web Content Accessibility Guidelines — conjunto de directrizes do W3C para tornar conteúdo web acessível a pessoas com deficiência. O Nível AA é o standard mínimo recomendado. |
| Webhook |
Notificação HTTP enviada automaticamente por um serviço externo (ex: Stripe) quando um evento específico ocorre (ex: pagamento confirmado). |
| Zod |
Biblioteca TypeScript-first para declaração e validação de esquemas de dados, com inferência automática de tipos. |
| Zustand |
Biblioteca minimalista de gestão de estado global para React, sem boilerplate, baseada em hooks. |