Files SDK - uma API única para todo tipo de armazenamento blob
(files-sdk.dev)- "Write Once, Store Anywhere"
- Processa 29 tipos de armazenamento de objetos/blob, como S3, R2, GCS e Azure, com um único SDK unificado
- Coloca mais de 40 adaptadores por trás de uma única interface, permitindo trocar apenas o adaptador e manter intactos todos os pontos de chamada
- Trata upload, download, head, exists, copy, move, list e delete com as mesmas chamadas em todos os adaptadores
- Oferece uma escape hatch para sair quando for necessário usar o cliente nativo
- Ao passar um array, executa processamento em lote com concorrência limitada, e o listing é percorrido como async iterable
- Ferramentas de arquivo para agentes de IA: fornece recursos para Vercel AI SDK, OpenAI Agents, Claude e MCP
- Também oferece uma CLI em que todos os métodos podem ser usados como comandos
- Suporta multipart paralelo para fazer upload de bodies grandes ou streams ilimitados dividindo em várias partes
- Com um único callback, é possível exibir o progresso de upload em tempo real por byte
- O ranged read é mapeado para HTTP 206, permitindo video seek, retomada de downloads e leitura de cabeçalhos de arquivos
- Se os hooks de ciclo de vida onAction·onRetry·onError forem conectados uma única vez no construtor, eles serão disparados em todas as operações de todos os adaptadores
- Com
sync(), é possível espelhar um backend em outro: faz upload apenas do que mudou, pula o que já é igual e limpa o que desapareceu, com suporte a dry-run - Os SDKs nativos de cada adaptador são peer dependencies opcionais, então só é instalado o que realmente for usado
- Repo -
haydenbleasel/files-sdk - Licença MIT
3 comentários
Existe um projeto semelhante, o Apache OpenDAL.
Obrigado pela boa informação.
Legal.