Dandy Portfolio
Meu papel — Desenvolvedor full-stack (solo)
O portfólio que você está vendo agora não é um site estático — é uma aplicação full-stack completa: multilíngue, com captação de leads, geração de PDF e integração com banco de dados.
O problema
Precisava de um portfólio que também funcionasse como prova técnica em si — não só listar projetos, mas demonstrar arquitetura, i18n, integração de backend e deploy na prática.
A solução
Next.js 16 com App Router e React 19, TypeScript em modo estrito, internacionalização com next-intl (português, espanhol e inglês), Supabase como backend dos formulários de orçamento, e geração de PDF sob demanda com @react-pdf/renderer.
Minha responsabilidade
Projetei e construí o site inteiro sozinho: arquitetura, design system, os dois wizards de captação de leads, a geração de PDF, o sistema de traduções e o deploy na Vercel com domínio próprio.
Arquitetura
Next.js App Router com rotas de API próprias; os formulários usam React Hook Form + Zod, com o mesmo schema validado no cliente e no servidor; as rotas de API gravam no Supabase, geram um PDF do briefing e disparam e-mails via Resend.
Principais funcionalidades
- Site multilíngue (PT/ES/EN) com next-intl, incluindo rotas e metadata por idioma
- Dois wizards multi-etapas de captação de leads, com validação compartilhada cliente/servidor via Zod
- Geração de PDF sob demanda a partir de cada briefing enviado
- Página de status de projeto por token, privada e sem necessidade de login
- Domínio próprio com deploy contínuo na Vercel
Decisões técnicas
- Zod como fonte única de validação, compartilhada entre o formulário (client) e a rota de API (server), pra nunca ficarem dessincronizados
- Honeypot simples nos formulários para filtrar bots sem precisar de captcha
- Service role key do Supabase confinada só ao servidor, nunca exposta ao navegador
Desafios
Ainda vou detalhar os desafios técnicos reais deste projeto.
O que aprendi
Ainda vou detalhar os aprendizados específicos deste projeto.