[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"categories-pt":3,"category:\u002Fpt\u002Fcategory\u002Ffrontend:4":37},[4,11,17,24,30],{"id":5,"slug":6,"name":7,"colorHex":8,"iconName":9,"postCount":10},"0e2c1225-f78a-4c20-8c93-998ab9dc93b9","frontend","Frontend","#40484f",null,28,{"id":12,"slug":13,"name":14,"colorHex":15,"iconName":9,"postCount":16},"bc8df70e-b7fb-4d89-a80c-fd458d36d58c","code-development","Programação & Dev","#8b5cf6",20,{"id":18,"slug":19,"name":20,"colorHex":21,"iconName":22,"postCount":23},"550e8400-e29b-41d4-a716-446655440001","inteligencia-artificial","Inteligência Artificial","#6366f1","brain",16,{"id":25,"slug":26,"name":27,"colorHex":28,"iconName":9,"postCount":29},"ea63b69c-2eb4-4100-81f3-70ce52d33743","tech-news","Notícias Tech","#e50606",8,{"id":31,"slug":32,"name":33,"colorHex":34,"iconName":35,"postCount":36},"550e8400-e29b-41d4-a716-446655440017","how-to-guides","Guias & Tutoriais","#be123c","book-open",5,{"category":38,"featured":39,"posts":65,"total":183},{"id":5,"slug":6,"name":7,"colorHex":8,"iconName":9,"postCount":10},{"id":40,"slug":41,"title":42,"excerpt":43,"image":44,"featured":45,"groupId":46,"publishedAt":47,"readingTime":29,"views":48,"author":49,"category":51,"tags":52},"ed53b468-063d-457c-a34d-119cd0a346aa","guia-de-estrategias-de-carregamento-html-que-vai-acelerar-seus-tempos-de-carregamento","Guia de Estratégias de Carregamento HTML Que Vai Acelerar Seus Tempos de Carregamento","Pare de bloquear seus renders e comece a entregar experiências ultrarrápidas aos usuários","https:\u002F\u002Fmfgiomkkbihnlpfdxwrt.supabase.co\u002Fstorage\u002Fv1\u002Fobject\u002Fpublic\u002Fblog-assets\u002Fmedia\u002Ffeatured\u002F1766637747576-featured-1bqmjq.png",false,"be2f746b-fe22-4009-86a9-a80e33513e02","2025-12-25T04:36:29.537779+00:00",69,{"name":50,"avatar":9},"Genildo Souza",{"slug":6,"name":7,"color":8},[53,56,59,62],{"slug":54,"name":55},"react","React",{"slug":57,"name":58},"javascript","JavaScript",{"slug":60,"name":61},"performance","Performance",{"slug":63,"name":64},"ssr","SSR",[66,82,102,121,136,152,168],{"id":67,"slug":68,"title":69,"excerpt":70,"image":71,"featured":45,"groupId":72,"publishedAt":73,"readingTime":29,"views":74,"author":75,"category":76,"tags":77},"f9984333-9c51-416b-a97c-2c1ed6353031","debugging-css-margin-esquecido-e-licoes-para-frontend","Debugging CSS: Margin Esquecido e Lições para Frontend","Uma simples propriedade CSS margin-inline: 8px transformou um bug de layout em uma saga de duas semanas, levando a uma refatoração desnecessária. Este relato detalha a frustração e as lições cruciais sobre a importância de uma metodologia sistemática de debugging frontend. Aprenda a evitar armadilhas comuns e o custo real dos bugs \"simples\".","https:\u002F\u002Fmfgiomkkbihnlpfdxwrt.supabase.co\u002Fstorage\u002Fv1\u002Fobject\u002Fpublic\u002Fblog-assets\u002Fmedia\u002Ffeatured\u002F1767745741814-featured-i6p1gc.jpeg","bcaf503a-15c1-4d28-8795-6ae3c2a3e06f","2026-01-06T23:46:59.421389+00:00",65,{"name":50,"avatar":9},{"slug":6,"name":7,"color":8},[78,81],{"slug":79,"name":80},"css","CSS",{"slug":60,"name":61},{"id":83,"slug":84,"title":85,"excerpt":86,"image":87,"featured":45,"groupId":88,"publishedAt":89,"readingTime":90,"views":91,"author":92,"category":93,"tags":94},"4d946105-2c56-47e0-bcf5-27b31a4e16b0","angular-17-roteamento-avancado-lazy-loading-e-preload","Angular 17: Roteamento Avançado, Lazy Loading e Preload","A performance de aplicações Angular é crucial. Descubra como o roteamento avançado no Angular 17+, com lazy loading, estratégias de preload e standalone components, transforma apps lentas em experiências ultra-rápidas. Resolva problemas de bundles enormes e carregamento demorado, otimizando a experiência do usuário.","https:\u002F\u002Fmfgiomkkbihnlpfdxwrt.supabase.co\u002Fstorage\u002Fv1\u002Fobject\u002Fpublic\u002Fblog-assets\u002Fmedia\u002Ffeatured\u002F1766796692323-featured-0hdpvp.png","6e1ec209-a0ac-4daf-b08a-b81caba13086","2025-12-27T00:48:34.480346+00:00",19,63,{"name":50,"avatar":9},{"slug":6,"name":7,"color":8},[95,98,101],{"slug":96,"name":97},"angular","Angular",{"slug":99,"name":100},"typescript","TypeScript",{"slug":57,"name":58},{"id":103,"slug":104,"title":105,"excerpt":106,"image":107,"featured":45,"groupId":108,"publishedAt":109,"readingTime":110,"views":111,"author":112,"category":113,"tags":114},"aeca5232-30c5-4d0f-998c-10c2fc9b4ea8","firebase-e-next-js-dupla-dinamica-acelerar-seus-projetos-full-stack-typescript","Firebase e Next.js: A Dupla Dinâmica para Acelerar Seus Projetos Full-Stack com TypeScript","Aprenda a integrar Firebase no Next.js: autenticação, banco de dados real-time e hosting serverless","https:\u002F\u002Fmfgiomkkbihnlpfdxwrt.supabase.co\u002Fstorage\u002Fv1\u002Fobject\u002Fpublic\u002Fblog-assets\u002Fmedia\u002Ffeatured\u002F1766588832903-featured-kp5qkc.png","5f43c57d-5bc9-488c-97ac-cc995eb25164","2025-12-24T14:38:20.500955+00:00",15,228,{"name":50,"avatar":9},{"slug":6,"name":7,"color":8},[115,116,117,120],{"slug":54,"name":55},{"slug":57,"name":58},{"slug":118,"name":119},"nextjs","Next.js",{"slug":99,"name":100},{"id":122,"slug":123,"title":124,"excerpt":125,"image":126,"featured":45,"groupId":127,"publishedAt":128,"readingTime":129,"views":74,"author":130,"category":131,"tags":132},"1c74d0bf-b294-4cd9-85bc-2274911238c2","6-segredos-react-usecallback-times-profissionais-usam-mas-nunca-documentam","6 Segredos do React useCallback que Times Profissionais Usam (Mas Nunca Documentam)","Muitos tutoriais abordam `useCallback` superficialmente. Este artigo revela padrões avançados usados por profissionais para eliminar problemas de performance em React. Aprenda a otimizar arrays de dependências, usar refs para handlers estáveis, implementar inicialização lazy e prevenir cascatas de memoização, garantindo aplicações React mais rápidas e eficientes.","https:\u002F\u002Fmfgiomkkbihnlpfdxwrt.supabase.co\u002Fstorage\u002Fv1\u002Fobject\u002Fpublic\u002Fblog-assets\u002Fmedia\u002Ffeatured\u002F1766366927548-featured-k1ok0a.png","94e02eff-0aa5-463f-88b0-1927284ac5f8","2025-12-22T01:28:52.787944+00:00",14,{"name":50,"avatar":9},{"slug":6,"name":7,"color":8},[133,134,135],{"slug":54,"name":55},{"slug":57,"name":58},{"slug":60,"name":61},{"id":137,"slug":138,"title":139,"excerpt":140,"image":141,"featured":45,"groupId":142,"publishedAt":143,"readingTime":144,"views":145,"author":146,"category":147,"tags":148},"c016e8bc-caa7-4080-afc8-403319c76846","frontend-frameworks-2025-guia-definitivo-comparaca","Frontend Frameworks 2025: O Guia Definitivo de Comparação","Qual framework escolher para seu próximo projeto? Esta é a pergunta de 1 milhão de dólares que todo dev frontend enfrenta.","https:\u002F\u002Fmfgiomkkbihnlpfdxwrt.supabase.co\u002Fstorage\u002Fv1\u002Fobject\u002Fpublic\u002Fblog-assets\u002Fmedia\u002Ffeatured\u002F1765687847114-featured-eyk3gj.png","7f8283fd-4ff5-44f6-9d33-8515bc46a1f2","2025-12-14T04:50:49.275111+00:00",7,147,{"name":50,"avatar":9},{"slug":6,"name":7,"color":8},[149,150,151],{"slug":96,"name":97},{"slug":54,"name":55},{"slug":118,"name":119},{"id":153,"slug":154,"title":155,"excerpt":156,"image":157,"featured":45,"groupId":158,"publishedAt":159,"readingTime":110,"views":160,"author":161,"category":162,"tags":163},"1732d939-709e-4ffb-a65d-424d7e0e8bff","tailwind-css-v4-guia-completo-da-nova-reescrita-e-performance","Tailwind CSS v4: Guia Completo da Nova Reescrita e Performance","Cansado de builds lentos e CSS complexo? Descubra Tailwind CSS v4, uma reescrita completa com builds 100x mais rápidos e configuração CSS-first revolucionária. Este guia detalha as mudanças fundamentais, como migrar projetos e dominar padrões avançados como container queries e design tokens dinâmicos.","https:\u002F\u002Fmfgiomkkbihnlpfdxwrt.supabase.co\u002Fstorage\u002Fv1\u002Fobject\u002Fpublic\u002Fblog-assets\u002Fmedia\u002Ffeatured\u002F1770133184854-featured-5akz8n.jpeg","3fccac4d-1d71-4deb-bf87-238f11a492cb","2025-12-14T02:33:49.941096+00:00",75,{"name":50,"avatar":9},{"slug":6,"name":7,"color":8},[164,165],{"slug":79,"name":80},{"slug":166,"name":167},"tailwind","Tailwind",{"id":169,"slug":170,"title":171,"excerpt":172,"image":173,"featured":45,"groupId":174,"publishedAt":175,"readingTime":176,"views":177,"author":178,"category":179,"tags":180},"3f698bd7-95f7-48b2-9fa9-a1f26faf78a3","trindade-data-loading-react-query-suspense-error-boundaries","A Trindade de Data Loading do React: Query + Suspense + Error Boundaries","O padrão de arquitetura que torna estados de loading obsoletos","https:\u002F\u002Fmfgiomkkbihnlpfdxwrt.supabase.co\u002Fstorage\u002Fv1\u002Fobject\u002Fpublic\u002Fblog-assets\u002Fmedia\u002Ffeatured\u002F1765669961948-featured-sq7ekk.png","39007d49-3048-4357-8e03-0fa64f5b2fec","2025-12-13T23:52:44.21525+00:00",10,117,{"name":50,"avatar":9},{"slug":6,"name":7,"color":8},[181,182],{"slug":54,"name":55},{"slug":57,"name":58},27]