Voltar

Portfólio — Site pessoal bilíngue

Este próprio site. Astro com output estático e ilhas de React, conteúdo em MDX via Content Collections, bilíngue (pt-BR / EN) com i18n nativo do Astro e deploy contínuo no Cloudflare Pages.

Astro 5React 19TypeScriptTailwindCSSMDXCloudflare Pages

Contexto

Este é o site que você está navegando agora. Foi construído para apresentar quem sou, no que trabalho e os projetos que já entreguei — com foco em performance, conteúdo versionado e uma aparência limpa e moderna.

A premissa de arquitetura é simples: HTML estático por padrão, JavaScript só onde agrega. O Astro renderiza tudo em build e hidrata apenas ilhas pontuais de React (troca de idioma, interações), mantendo o peso da página baixo.

Conteúdo como dados

Cada projeto é um arquivo .mdx em src/content/projects/, validado por um schema Zod via Astro Content Collections. A home renderiza os cards a partir dessa collection e cada projeto ganha uma página dedicada gerada por rota dinâmica (projects/[slug]).

src/content/projects/<slug>-pt.mdx
src/content/projects/<slug>-en.mdx

Bilíngue (pt-BR / EN)

Internacionalização com o i18n nativo do Astro: pt como locale padrão (sem prefixo) e en servido em /en. Os textos de interface vivem em arquivos JSON (src/i18n/), e cada projeto tem sua variante -pt e -en.

Stack

CamadaTecnologia
FrameworkAstro 5 (output estático, ilhas de React)
UIReact 19, TypeScript
EstiloTailwindCSS
ConteúdoMDX + Astro Content Collections (schema Zod)
Íconeslucide-react
TipografiaInter (corpo) + JetBrains Mono (código) via @fontsource
QualidadeESLint + Prettier (prettier-plugin-astro)
HospedagemCloudflare Pages (deploy contínuo no push)

Decisões de projeto