logo hsb.horse

Snippets

Snippets

Uma coleção de trechos curtos de código e notas executáveis para reutilização rápida.

Tags de snippets
  1. Divisão de texto com TransformStream

    Um exemplo de implementação TypeScript usando ReadableStream e TransformStream para dividir texto longo em chunks de tamanho especificado.

  2. Como usar seletores de atributo href no CSS

    Snippet CSS que usa seletores de atributo no atributo href do elemento a, incluindo correspondência por prefixo, sufixo e substring.

  3. Verificação de permissão da File System API

    Função para verificar e solicitar permissões da File System API no navegador. Suporta leitura e leitura/escrita.

  4. Hook React useSelection

    Hook customizado de React para gerenciar o estado de seleção de vários itens. Trata seleção total, parcial e individual com segurança de tipos.

  5. Converter imagens em lote para AVIF com avifenc

    Snippet Bash que percorre recursivamente arquivos jpg/jpeg/png e os converte para .avif usando avifenc.

  6. Cache de import dinâmico

    Implementação leve em TypeScript para cachear imports dinâmicos. Trata múltiplos imports do mesmo caminho com uma única Promise.

  7. Exibir capacidade de armazenamento no Finder

    Alterna a exibição da capacidade de armazenamento no Finder do macOS com um atalho de teclado.

  8. Verificação de arquivo no Node.js

    Função baseada em Promise para verificar se um caminho é um arquivo no Node.js. Retorna false em caso de erro.

  9. Implementação de p-limit em TypeScript

    Reimplementação em TypeScript do p-limit para controlar concorrência de Promises. Permite controlar concorrência sem adicionar dependências.

  10. Implementação de yocto-queue em TypeScript

    Reimplementação em TypeScript da fila leve yocto-queue. Oferece operações básicas como enqueue, dequeue e iterator.

  11. Store de hash de mensagens em tempo de build

    Uma função TypeScript que realiza hash e encurta IDs de mensagens e contextos em tempo de build. Útil quando uma plataforma alvo restringe as chaves de tradução permitidas.

  12. Bulk Import with Fallback from Pairwise COPY to Individual Inserts

    Primeiro tente bulk import para grandes volumes de dados relacionais e depois recorra a inserções individuais para linhas que violam restrições de esquema. Equilibra velocidade e taxa de sucesso.

  13. Padrão de Orquestração Cache-First, Live-Fetch

    Orquestração que combina um caminho rápido pelo cache com um caminho lento pelo serviço remoto. Mede hits/misses de cache, latência e resultado final como métricas, delegando os efeitos colaterais para fora.

  14. Clonar elemento UI nativo para herdar estilos

    Um padrão leve que mantém consistência visual clonando botões existentes da aplicação host com cloneNode, substituindo apenas o ícone e texto. Sem necessidade de lutar com CSS ofuscado.

  15. Configuração idempotente de observador DOM via dataset

    Um padrão simples usando atributos data para evitar registros duplicados de MutationObserver. Sem necessidade de registro global, altamente portável.

  16. Supressão de Avisos com Cooldown Incorporado na Entidade

    Um padrão que incorpora a lógica de supressão de avisos repetidos na própria entidade de quota. Controla adequadamente avisos frequentes como notificações de limite de taxa e alertas de cobrança.

  17. Tamanho de Memória dos Tipos de Dados Go

    Lista completa dos tamanhos de memória para cada tipo de dados Go e dicas práticas para codificação eficiente em memória.

  18. Estratégia de Observação DOM em Camadas

    Um padrão para alternar progressivamente para observadores mais estreitos assim que o app estiver pronto. Amplamente reutilizável em content scripts de SPA e integrações DOM de terceiros.

  19. Função Auxiliar de Extração de Propriedades

    Gera uma função que extrai apenas propriedades especificadas de um objeto. Consolida a extração de propriedades type-safe em uma linha para transformações mapBy aninhadas e arrays.

  20. Caminhada de Repositório em Duas Fases com Orçamento de Bytes

    Dividir o processamento em scan path/size → análise de estrutura → leitura apenas dos chunks necessários → parsing para tornar os limites de memória controláveis mesmo para grandes repositórios.

  21. Pool de Workers com Sub-lotes e Timeout por Sub-lote

    Um padrão que divide grandes conjuntos de dados em pequenos sub-lotes enviados aos workers, reduzindo pressão de memória enquanto define timeouts por lote para detecção precoce de anomalias.

  22. Configuração de npm-scripts do Biome

    Os padrões clássicos de npm-scripts ao introduzir o Biome. Execute lint e format com o comando check.

  23. Regex para Extensões de Imagem

    Padrão regex JavaScript/TypeScript para detectar formatos de imagem a partir de nomes de arquivo. Suporta png, webp, jpg, jpeg, avif, gif.

  24. Objeto com Inicialização Preguiçosa

    Pattern TypeScript usando getters para gerar valores apenas no primeiro acesso. Lazy evaluation mais leve que o cache de memória.

  25. Salvar páginas man em arquivo de texto

    Como salvar a saída do comando man em um arquivo no macOS/Linux. Use col -b para remover caracteres de controle e criar texto legível.

  26. Baixar tarball do npm

    Como baixar tarballs de pacotes npm (.tgz) usando npm pack e pnpm info. Métodos para npm, yarn e pnpm.

  27. Geração de Versão Semântica Baseada em Tempo

    Função TypeScript que gera automaticamente números de versão a partir de timestamps de build. Útil quando existem limites de versão, como em extensões Chrome.

  28. Implementação SHA256 Síncrona (sem WebCrypto API)

    Uma implementação SHA256 em JavaScript puro sem usar a API WebCrypto. Para ambientes onde o objeto crypto não está disponível, como em algumas implementações de Web Workers.

  29. TypeScript Non-null Assertion

    Funções de type guard TypeScript para eliminar undefined e null. Garantem tanto erros de execução quanto segurança de tipos.

  30. Implementando um Tipo Result Leve em TypeScript

    Um padrão de tratamento de erros sem try-catch. Trate erros de forma type-safe com um tipo Result que separa data e error.

  31. Funções auxiliares Uint32Array

    Um wrapper TypeScript conciso para chamadas `new Uint32Array`. Suporta todas as interfaces do construtor com sobrecargas de função com segurança de tipos.

  32. Funções auxiliares Uint8Array

    Uma função wrapper TypeScript para simplificar chamadas new Uint8Array. Suporta arrays, ArrayBuffer e inicialização por tamanho.

  33. Mesclar Uint8Arrays

    Uma função TypeScript para mesclar múltiplos Uint8Arrays em um. Útil para combinar dados binários.

  34. Polyfill para crypto.randomUUID

    Implementação polyfill da função crypto.randomUUID. Como todos os navegadores suportam isso agora, não há necessidade de nova implementação, mas serve como referência para entender o mecanismo UUID v4.

  35. Gerar parameters.json a partir de um template CloudFormation

    Snippet que combina aws cloudformation validate-template e jq para gerar automaticamente um parameters.json refletindo variáveis de ambiente.

  36. Cheatsheet do comando gzip

    Snippet com o uso básico do comando gzip, incluindo compressão, descompressão e especificação de opções.

  37. Utilitários de array em TypeScript

    Coleção de funções utilitárias type-safe para operações comuns com arrays em TypeScript. Geração de array vazio, chunking, filtro de null e embaralhamento.