Por que este site existe?
Um problema antigo ao aprender qualquer tecnologia nova é que a maior parte da documentação e dos exemplos que você encontra na internet (ou recebe das IAs) é tão trivial que não dá nenhuma ideia se a tecnologia — ou a sua implementação dela — vai aguentar uma carga real e complexa. Um exemplo disso são os inúmeros exemplos de lista de tarefas.
Tenho um projeto SASS planejado, baseado em várias premissas tecnológicas que precisam ser testadas antes mesmo de tentar construir o projeto real; e um site de perfil pessoal como este, movido por um backend CMS completo, é complexo o suficiente para merecer uma construção adequada para produção e simples o bastante para não levar tempo demais para montar; com o benefício adicional de que, se tudo correr bem, eu ganho um site de perfil que performa bem e será um bom campo de testes para experimentos mais técnicos.
Cloudflare como destino de implantação
Cloudflare Workers https://workers.cloudflare.com/ parecem, à primeira vista, uma forma extremamente barata de implantar uma aplicação complexa. O desenvolvimento de back-end parece simples e robusto, e o pacote OpenNext https://opennext.js.org/ aparenta fornecer um jeito eficiente de desenvolver o seu front-end em Next.js https://nextjs.org/ e implantar na Cloudflare.
Duvido que este site atraia muito tráfego humano; porém, vou tentar direcionar para ele o máximo possível de tráfego de busca na web e de crawlers de IA. Assim, devo conseguir descobrir o custo real de operar um site movimentado na plataforma da Cloudflare.
Tornar este site mais complicado do que deveria ser
Backend de gerenciamento de conteúdo (CMS)
Sendo bem honesto, este site, do jeito que está atualmente, poderia ser montado com um agente de codificação em poucas horas; porém, um sistema sério não deveria precisar de um deploy para mudar conteúdo básico. Portanto, este site usa um CMS completo baseado no Payload CMS (https://payloadcms.com/) implantado como um Cloudflare Worker separado.
O próprio Payload usa um banco de dados SQL, que por sua vez precisa ser implantado como uma instância de banco de dados CloudFlare D1 SQLite https://developers.cloudflare.com/d1/, e gerenciado adequadamente com migrações de banco para dar suporte ao ciclo de vida de desenvolvimento.
Traduções automatizadas
Este site suporta 20 idiomas. Considerando que o website é um scaffold simples para o conteúdo do CMS, o lado de i18n é tratado com um agente de codificação (Co-pilot e Claude Opus 4.5) durante o desenvolvimento.
Isso deixa todo o conteúdo atual e futuro do CMS precisando ser traduzido automaticamente sempre que qualquer conteúdo em inglês for alterado.
Worker baseado em fila e Cron
O requisito de tradução exige um processo razoavelmente complicado que:
- Será disparado por um timer de Cron.
- Identificará qualquer conteúdo que precise de uma nova tradução.
- Executará uma tradução de forma confiável.
- Se recuperará de forma confiável de uma falha.
Portanto, outra instância de CloudFlare D1 é usada para rastrear o trabalho de tradução, e as filas da Cloudflare (https://developers.cloudflare.com/queues/) são usadas com um padrão produtor-consumidor baseado em cron para gerenciar e escalar as tarefas. A API gpt-5.2 da OpenAI é chamada para fazer as traduções, e o AI.SDK https://ai-sdk.dev/ conecta tudo.
Para este site, isso é exagero, mas qualquer sistema de produção, em qualquer escala, precisa de um padrão robusto para orquestrar processamento em segundo plano.
Versões anteriores deste site
Eu já fiz este site duas vezes como uma ferramenta para aprender novas tecnologias:
2013 - Aprendendo Ruby e AWS
- Ruby on Rails v4.0.0.
- Estilização com Bootstrap v3.
- CoffeeScript para a UI.
- Padrão de front-end Backbone Marionette VMC.
- Implantado em um host AWS.
2017 - Aprendendo React
- React v16.0.0 para UI.
- Redux e Thunk para operações assíncronas.
- Semantic UI para estilização.
E agora
O site está devidamente configurado para SEO, e é necessário um ritmo regular de conteúdo novo para impulsionar o tráfego de crawlers. Vou publicar artigos mais detalhados sobre as várias tecnologias e soluções usadas.
