# Gabriel Caiana — Blog pessoal > Blog de Gabriel Caiana, Senior Software Engineer. Artigos em português (BR) sobre frontend, Vue/Nuxt, TypeScript, performance e IA aplicada. ## Sobre - Autor: Gabriel Caiana - Cargo: Senior Software Engineer e Tech Lead na Petlove - Temas: IA aplicada, LangGraph, evals, Vue, Nuxt, TypeScript - Site: https://gabrielcaiana.com/pt - GitHub: https://github.com/gabrielcaiana - LinkedIn: https://www.linkedin.com/in/gabrielcaiana/ - X: https://x.com/gabriel_caiana ## Páginas - [Blog (PT)](https://gabrielcaiana.com/pt/blog) - [Séries](https://gabrielcaiana.com/pt/series) - [Now](https://gabrielcaiana.com/pt/now) - [Projetos](https://gabrielcaiana.com/pt/projects) - [Sobre](https://gabrielcaiana.com/pt/about) - [Blog (EN)](https://gabrielcaiana.com/blog) ## Artigos (Português) - [LangGraph só pro handoff: um chatbot em que um modelo de decisão escolhe quem atende](https://gabrielcaiana.com/pt/blog/langgraph-so-pro-handoff-um-chatbot-em-que-um-modelo-de-decisao-escolhe-quem-atende): Chatbot de pós-venda com LangChain e LangGraph em que um modelo de decisão escolhe o subagente por mensagem: arquitetura, código, fallback, A/B e falhas reais. (2026-10-16 · IA, LLM, Arquitetura) - [Decision models na prática: quando escolher o LLM por mensagem vale a pena (e quando o médio basta)](https://gabrielcaiana.com/pt/blog/decision-models-na-pratica-quando-escolher-o-llm-por-mensagem-vale-a-pena): Coloquei o Microsoft-Decision-1 pra escolher subagente e LLM num chatbot de pós-venda: harness, calibration, cost guard e o que 1.000 conversas mostraram. (2026-10-15 · IA, LLM, Arquitetura) - [Vertical slices no frontend: quando a pasta conta o que o produto faz](https://gabrielcaiana.com/pt/blog/vertical-slices-no-frontend-quando-a-pasta-conta-o-que-o-produto-faz): Como organizar uma SPA React em vertical slices por domínio: public API por slice, dados no loader da rota e um teste de arquitetura que impede o atalho no CI. (2026-10-11 · Arquitetura, Frontend, React, TypeScript) - [De modelo base a ChatGPT: SFT, ferramentas e reinforcement learning](https://gabrielcaiana.com/pt/blog/de-modelo-base-ao-chatgpt): Como o modelo base de uma LLM vira o ChatGPT: supervised fine-tuning, uso de ferramentas, redução de alucinação e reinforcement learning explicados aqui. (2026-07-02 · IA, LLM) - [Do Common Crawl ao modelo base: como uma LLM aprende linguagem](https://gabrielcaiana.com/pt/blog/do-common-crawl-ao-modelo-base): Como uma LLM sai de dados brutos da web e chega ao modelo base: Transformer, Common Crawl, FineWeb, tokenização e pré-treinamento explicados sem enrolação. (2026-07-02 · IA, LLM) - [React é uma biblioteca de Views, não uma arquitetura](https://gabrielcaiana.com/pt/blog/react-e-uma-biblioteca-de-views-nao-uma-arquitetura): Seu componente começou inocente, mas hoje faz tudo. Entenda por que React é uma biblioteca de Views, não uma arquitetura, e como separar domínio da UI. (2026-06-29 · Frontend, Arquitetura, Vue.js, JavaScript) - [Como reorganizamos o checkout de um grande e-commerce sem parar de vender](https://gabrielcaiana.com/pt/blog/como-reorganizamos-o-checkout-sem-parar-de-vender): Como reorganizamos o checkout de um grande e-commerce com Nuxt Layers, padrão CAL e linting automático para escalar — sem parar de vender em produção. (2026-06-19 · Vue.js, Nuxt, TypeScript, Arquitetura) - [Amazon Bedrock na prática: IA como parte da arquitetura, não como dependência externa](https://gabrielcaiana.com/pt/blog/amazon-bedrock-na-pratica-ia-como-parte-da-arquitetura): Como migrei de OpenAI para Amazon Bedrock: auth via IAM, billing consolidado, Haiku vs Sonnet por tarefa e trade-offs reais de rodar IA na AWS. (2026-05-06 · AWS, IA, Arquitetura) - [O que tenho aprendido ao construir um produto com Spec-Driven Development](https://gabrielcaiana.com/pt/blog/o-que-aprendi-com-spec-driven-development): O que aprendi construindo um produto com Spec-Driven Development: como specs estruturados eliminam débito técnico usando IA como par de desenvolvimento. (2026-04-08 · IA, Arquitetura, Boas Práticas) - [Monorepo NestJS com pnpm workspaces: como estruturei o dev experience para múltiplos serviços](https://gabrielcaiana.com/pt/blog/monorepo-nestjs-pnpm-workspaces-dev-experience): Como estruturei um monorepo NestJS com pnpm workspaces para múltiplos serviços: packages compartilhados, hot reload em dev e build otimizado em produção. (2026-04-06 · Arquitetura, Boas Práticas, TypeScript) - [Composable Abstraction Layer: o pattern que faltava entre Pinia e seus componentes Vue](https://gabrielcaiana.com/pt/blog/composable-abstraction-layer-pinia-vue): Aprenda como o Composable Abstraction Layer elimina o acoplamento entre Pinia e Vue 3, centralizando lógica, side-effects e garantindo testabilidade por camada. (2026-03-23 · Vue.js, TypeScript, Arquitetura) - [Arquitetura Modular com Nuxt Layers em Projetos Vue](https://gabrielcaiana.com/pt/blog/arquitetura-modular-frontend-nuxt-layers-revoluciona-organizacao-projetos-vue): Descubra como o Nuxt Layers organiza projetos Vue.js com arquitetura modular. Crie aplicações front-end escaláveis e manuteníveis com conceitos do backend. (2025-10-02 · Nuxt, Vue.js, Arquitetura, Frontend, Boas Práticas) - [Cache HTTP e CDN com Cloudflare - Guia Completo](https://gabrielcaiana.com/pt/blog/cache-http-cdn-cloudflare): Aprenda a implementar cache HTTP com Cloudflare CDN para melhorar a performance das aplicações web, reduzir custos de servidor e acelerar o carregamento. (2025-09-10 · Performance, AWS, Frontend, Boas Práticas) - [Nuxt 4: TypeScript e Type Safety - Guia Completo](https://gabrielcaiana.com/pt/blog/nuxt-4-typescript-type-safety): Explore o TypeScript no Nuxt 4: auto-generated types, type safety nativo e inferência inteligente para desenvolvimento Vue.js mais seguro e produtivo. (2025-09-07 · Nuxt, TypeScript, Vue.js, Frontend, Boas Práticas) - [Nuxt 4: Nova Estrutura de Diretórios e Guia de Migração](https://gabrielcaiana.com/pt/blog/nuxt-4-nova-estrutura-diretorios-migracao): Descubra a nova estrutura de diretórios do Nuxt 4 com o diretório app/ e aprenda como migrar seus projetos do Nuxt 3 de forma segura e sem quebrar nada. (2025-09-01 · Nuxt, Vue.js, Frontend, Arquitetura, Boas Práticas) - [JavaScript em 2025: Guia Completo dos Métodos e Operadores Mais Buscados](https://gabrielcaiana.com/pt/blog/javascript-em-2025-guia-completo-metodos-operadores): Guia completo dos métodos JavaScript mais buscados em 2025: forEach, map, filter, reduce, split, push, splice e operador ternário com exemplos práticos. (2025-08-28 · JavaScript, Frontend, Boas Práticas) - [Armazenamento Persistente no Nuxt com Unstorage](https://gabrielcaiana.com/pt/blog/armazenamento-persistente-no-nuxt-com-unstorage): Aprenda a usar o Unstorage no Nuxt para persistir dados server-side com Redis e Cloudflare KV. Guia completo com exemplos práticos de armazenamento no Nuxt 3. (2025-07-10 · Nuxt, JavaScript, Arquitetura, Performance, Boas Práticas) - [Como armazenar dados no navegador sem fazer bagunça](https://gabrielcaiana.com/pt/blog/como-armazenar-dados-no-navegador-sem-fazer-bagunca): Entenda quando usar localStorage, sessionStorage e IndexedDB. Guia prático com exemplos de e-commerce para armazenar dados no navegador de forma organizada. (2025-07-07 · JavaScript, Frontend, Performance, Boas Práticas) - [Otimizando a Indexação com Astro](https://gabrielcaiana.com/pt/blog/otimizando-indexacao-com-astro): Descubra como o Astro melhora a indexação de sites com renderização estática, zero JavaScript e técnicas de SEO para maximizar visibilidade nos buscadores. (2025-06-15 · Frontend, SEO, Performance) - [Reatividade: SolidJS vs React vs Vue](https://gabrielcaiana.com/pt/blog/reatividade-solidjs-v-react-vs-vue): Compare os sistemas de reatividade de React, Vue e SolidJS: re-renderização, proxies e signals. Entenda as diferenças e o impacto na performance front-end. (2025-06-06 · Vue.js, Frontend, Performance) - [Integração entre GitHub e Discord para Notificações de Pull Requests](https://gabrielcaiana.com/pt/blog/integracao-github-discord-notificacoes-pull-requests): Configure GitHub e Discord para notificações automáticas de Pull Requests em tempo real. Guia completo com GitHub Actions passo a passo para seu time. (2024-09-01 · Boas Práticas) - [Componentes para Debug e Renderização com DevOnly e ClientOnly no Nuxt 3](https://gabrielcaiana.com/pt/blog/componentes-para-debug-e-renderizacao-com-devonly-e-clientonly-no-nuxt-3): Aprenda a usar DevOnly e ClientOnly no Nuxt 3 para renderização condicional, debug seguro em desenvolvimento e builds de produção mais eficientes e otimizadas. (2024-08-31 · Nuxt, Vue.js, Frontend) - [Como Preservar o Estado dos Componentes entre Rotas com KeepAlive no Nuxt 3](https://gabrielcaiana.com/pt/blog/como-manter-estado-componentes-entre-rotas-keepalive-nuxt-3): Aprenda a usar o KeepAlive no Nuxt 3 para preservar o estado dos componentes entre mudanças de rota e garantir uma experiência mais fluida e performática. (2024-08-26 · Nuxt, Vue.js, Performance) - [Explorando a Programação Funcional em JavaScript](https://gabrielcaiana.com/pt/blog/explorando-a-programacao-funcional-em-javascript): Aprenda os fundamentos de Programação Funcional em JavaScript: funções de primeira classe, imutabilidade, composição e os métodos map, filter e reduce. (2024-03-30 · JavaScript, Frontend, Boas Práticas) - [Como funciona o Core Web Vitals](https://gabrielcaiana.com/pt/blog/como-funciona-o-core-web-vitals): Entenda os Core Web Vitals do Google: LCP, FID e CLS. Saiba como essas métricas afetam o ranqueamento e como otimizar a experiência do usuário no site. (2024-02-24 · Performance, SEO, Frontend) - [Como adicionar a análise de pacotes do webpack em seu projeto nuxt](https://gabrielcaiana.com/pt/blog/nuxt-webpack-analyze): Aprenda a configurar a análise de pacotes webpack no Nuxt com um mapa de árvore interativo para visualizar e otimizar o tamanho do bundle da sua aplicação. (2024-01-21 · Nuxt, Performance, Frontend) - [Métricas para Medir a Performance em Software](https://gabrielcaiana.com/pt/blog/metricas-para-medir-performance-em-software): Entenda as principais métricas de performance em software: latência, throughput e escalabilidade. Como monitorar e otimizar sistemas para alta disponibilidade. (2024-01-11 · Performance, Arquitetura, Boas Práticas) - [Construindo uma Arquitetura Robusta](https://gabrielcaiana.com/pt/blog/construindo-uma-arquitetura-robusta): Explore os pilares de uma arquitetura de software robusta: configurabilidade, extensibilidade e facilidade de instalação para sistemas escaláveis e flexíveis. (2024-01-10 · Arquitetura, Frontend, Boas Práticas) - [Entendendo as 10 Heurísticas de Nielsen](https://gabrielcaiana.com/pt/blog/entendendo-as-10-heuristicas-de-nielsen): Descubra as 10 Heurísticas de Nielsen para design de interfaces. Os princípios de Jakob Nielsen criados em 1994 que guiam usabilidade e boas práticas de UX. (2022-07-08 · Frontend) - [O que são micro frontends](https://gabrielcaiana.com/pt/blog/o-que-sao-micro-frontends): Entenda o que são Micro Frontends: o padrão arquitetural que aplica microsserviços ao frontend para times independentes, deploys ágeis e escalabilidade. (2022-07-08 · Arquitetura, Frontend, Boas Práticas)