Guias

Explicações curtas e práticas sobre os erros, formatos e escolhas do dia a dia de quem desenvolve, cada uma com uma ferramenta para testar na hora.

Como juntar arquivos PDF sem fazer upload A maioria dos sites para juntar PDF envia os seus documentos para os servidores deles. Para contratos, extratos bancários e documentos de identidade, há opções melhores. Tags Open Graph: como controlar a prévia de links Quando um link é compartilhado no Facebook, LinkedIn, WhatsApp, Slack ou X, algumas linhas no head da página decidem que título, texto e imagem as pessoas vão ver. Como ler QR Code no notebook ou no PC Se o QR Code está na tela do próprio celular, não dá para escaneá-lo com ele, e o notebook não vem com um app de câmera para isso. Veja os jeitos que funcionam. Como tipar a resposta de uma API em TypeScript O fetch entrega os dados com o tipo any, o que desliga o TypeScript exatamente onde os bugs nascem. Veja como dar um tipo de verdade aos dados da API, com rapidez e segurança. Como transformar uma página do Elementor em HTML e CSS puros O Elementor já entrega ao navegador HTML e CSS comuns; o trabalho é salvar essa saída, reduzir o CSS ao que a página usa e substituir as poucas partes que dependem do WordPress. Base64 vs Base64URL: o que muda e quando usar cada um Base64URL é o Base64 padrão com dois caracteres trocados, - no lugar de + e _ no lugar de /, e normalmente sem o preenchimento com =. Converter imagem para JPG: guia para WebP, PNG e fotos do iPhone O JPG é o formato de foto mais aceito que existe; veja quando e como transformar qualquer imagem em um JPG de verdade, sem instalar programas e sem fazer upload. Timestamps do Discord: sintaxe, estilos e exemplos Um timestamp do Discord é um Unix time em segundos mais uma letra de estilo, e cada leitor o vê no próprio fuso horário e no formato do seu idioma. encodeURI vs encodeURIComponent: qual usar O encodeURIComponent codifica 11 caracteres que o encodeURI deixa intactos, e são esses 11 caracteres que decidem se um valor continua dentro do seu parâmetro. String Base64 inválida: por que a decodificação falha e como corrigir Um decodificador Base64 rejeita uma string por um de três motivos: um caractere fora do alfabeto, um comprimento impossível ou preenchimento no lugar errado. Tutorial de JSON: sintaxe, regras e como trabalhar com JSON em JavaScript e Python JSON é o formato de troca de dados mais simples e mais usado; com poucas regras curtas e duas funções em cada linguagem, você consegue ler, criar e guardar qualquer dado. Unexpected Token in JSON: o que significa e como resolver Esse erro significa que o texto que você tentou analisar não é JSON. O token citado na mensagem costuma revelar exatamente o que chegou no lugar dele. JWT vs cookies de sessão: diferenças e quando usar cada um Um cookie de sessão é a chave para um estado guardado no servidor; um JWT leva um estado assinado até o servidor. Essa única diferença explica todos os prós e contras. Criar QR Code grátis e permanente: do link do Instagram ao Wi-Fi e à localização Um QR Code com o conteúdo escrito diretamente no próprio código nunca expira; veja como criar um código assim para cada uso e garantir que ele seja escaneado sem problemas. MD5 vs SHA-1 vs SHA-256: qual hash usar? Use SHA-256 em tudo o que envolve segurança; MD5 e SHA-1 só são aceitáveis quando ninguém ganha nada forjando um hash igual. Reduzir o tamanho de uma foto: chegar a 200 KB sem perda de qualidade visível O tamanho de uma foto depende de duas coisas, as dimensões e a qualidade de compressão; acertando essas duas, uma foto de celular de vários megabytes chega em segundos a um tamanho que os formulários aceitam. Regex para validação de e-mail: um padrão prático e seus limites Nenhuma regex consegue dizer se um endereço funciona. Um padrão curto pega erros de digitação; um e-mail de confirmação prova o resto. Regex para números, telefones e endereços IP Padrões prontos para copiar para entradas numéricas, telefones e endereços IP, todos testados, com notas sobre quando um parser ou uma biblioteca resolve melhor. O que é uma senha forte e como criar uma senha realmente segura? A força de uma senha não vem da aparência complicada, e sim do comprimento e da aleatoriedade; este guia mostra como criar uma senha praticamente impossível de adivinhar e que você nem precisa decorar. Unexpected End of JSON Input: o que significa e como resolver O parser chegou ao fim do texto antes de encontrar um valor completo e, na maioria dos casos, isso acontece porque não havia texto nenhum. Codificação de URL: como funciona o percent-encoding A codificação de URL troca cada byte que não pode aparecer como está em um endereço por um sinal de % seguido do seu valor em hexadecimal. UUID vs GUID: o que realmente muda GUID é o nome que a Microsoft dá ao UUID. As diferenças que aparecem na prática são a formatação do texto, a ordem dos bytes quando o valor é guardado em 16 bytes e a ordenação do SQL Server. UUID vs ULID vs Nano ID vs IDs autoincrementais Cinco esquemas comuns de ID comparados no que importa na prática: tamanho, ordenação, chance de colisão, comportamento no banco de dados e o que um ID entrega. WebP vs PNG vs JPG: como escolher o formato de imagem certo JPG é para fotos que precisam abrir em qualquer lugar, PNG é para pixels exatos, e o WebP faz os dois trabalhos na web com arquivos menores.