Fetch com timeout usando AbortSignal.timeout: pare de deixar requisição pendurada
Aprenda a usar AbortSignal.timeout para evitar fetch infinito, tratar timeout e melhorar UX sem gambiarras.
Aprenda a usar AbortSignal.timeout para evitar fetch infinito, tratar timeout e melhorar UX sem gambiarras.
Vite 8.1 traz bundled dev mode experimental para apps grandes. Veja o que muda na DX e quando vale testar.
Next.js 16.3 Preview traz recursos para agentes de IA. Entenda o que muda, onde faz sentido testar e onde ainda cabe cautela.
O frontend moderno tem uma relação curiosa com ferramentas de build. Quando elas funcionam bem, ninguém lembra que existem. Quando ficam lentas, todo mundo começa a questionar as escolhas de vida que levaram aquele projeto…
Todo mundo que programa em JavaScript eventualmente descobre uma verdade meio amarga: trabalhar com datas parece simples até você precisar levar datas a sério. Fuso horário, horário de verão, data sem hora, hora sem data,…
Quem já criou interface com abas, sidebar, painel lateral ou modal persistente conhece bem esse dilema: você quer esconder uma parte da UI, mas não necessariamente quer destruir tudo que estava acontecendo ali dentro. Às…
Houve uma época em que configurar o ambiente frontend parecia um teste de resistência. Webpack, Babel, loaders, plugins, aliases, dev server, cache, minificação, sourcemap — e, no meio disso tudo, você só queria abrir uma…
Se você já trabalhou em um projeto React por tempo suficiente, provavelmente já encarou aquele useEffect que começou simples e terminou parecendo uma gaveta de cabos antigos: funciona, mas ninguém tem coragem de mexer. O…
Tem um bug de experiência que aparece em muito projeto: o usuário digita em um campo de busca e, a cada tecla, a aplicação dispara uma nova requisição. Digitou “r”? API. Digitou “re”? API. Digitou…
Durante muito tempo, a resposta padrão para quase qualquer aplicação web moderna foi: joga tudo no browser e deixa o JavaScript resolver. SPA, estado global, fetch no client, loading para todo lado e uma fé…