LocalSend: código aberto multiplataforma para compartilhar arquivos entre dispositivos próximos
(localsend.org)- LocalSend permite enviar e receber arquivos entre dispositivos na mesma rede local sem nuvem nem servidor intermediário, sendo útil para quem quer usar um recurso no estilo AirDrop em várias plataformas
- Suporta Windows, macOS, Linux, Android e iOS, e permite iniciar a transferência de arquivos por proximidade logo após a instalação, sem conta nem login
- Os dados transferidos não saem da rede Wi-Fi local, e todas as transferências usam criptografia HTTPS
- Não há restrições de tipo de arquivo para fotos, vídeos, documentos, texto etc., e o local padrão de salvamento é a pasta Downloads do dispositivo, mas isso pode ser alterado nas configurações
- Projeto gratuito e de código aberto com 70k+ estrelas no GitHub, 5M+ downloads e 100+ contribuidores, sem anúncios, rastreadores ou custos ocultos
Compartilhamento de arquivos com base em rede local
- LocalSend é uma ferramenta multiplataforma de código aberto para compartilhar arquivos sem usar nuvem
- As plataformas compatíveis são Windows, macOS, Linux, Android e iOS
- O fluxo de uso é simples
- Instale e execute o LocalSend em cada dispositivo
- Selecione fotos, vídeos, documentos, texto ou outros tipos de arquivo
- Toque em um dispositivo próximo para transferir pela rede local
- Não são necessários conta, login nem servidor
- Funciona sem conexão com a internet, e os dados não saem da rede Wi-Fi local
- Transfere na velocidade máxima da rede Wi-Fi e não há limitação de largura de banda
- Todas as transferências são criptografadas com HTTPS
- Se precisar de segurança adicional, é possível ativar a confirmação por PIN
- Por padrão, os arquivos são salvos na pasta Downloads do dispositivo, e o local de salvamento pode ser alterado nas configurações
Status do projeto e canais de suporte
- O LocalSend é 100% gratuito e de código aberto, sem anúncios, rastreamento ou custos ocultos
- Os indicadores públicos são 70k+ estrelas no GitHub, 5M+ downloads e 100+ contribuidores
- A versão web está disponível em web.localsend.org
- Comunidade e canais de suporte
- Bugs podem ser reportados em GitHub Issues
1 comentários
Comentários do Hacker News
O melhor é que funciona na maioria das principais plataformas e a GUI é fácil de usar
O app para iOS também é excelente
Mas há alguns bugs para ficar atento: no Windows, se o LocalSend estiver rodando com a janela aberta (depois de receber algo?), ele impede o sistema de entrar em suspensão, e no Linux acontece a mesma coisa mesmo que a janela não esteja visível
No Linux, se o LocalSend ficar ocioso com a janela visível, o gerenciador de janelas do desktop continua atualizando as áreas danificadas e usa CPU de forma anormalmente alta
No Windows, mesmo ativando a opção “startup minimized” e configurando para iniciar com o sistema, muitas vezes a janela continua aparecendo, e considerando o problema de suspensão, também não é animador deixá-lo rodando em segundo plano
Minha única reclamação é que o aparelho que recebe precisa estar acordado e com o app em primeiro plano para funcionar. Pelo menos no Android foi assim, mesmo com a opção de salvamento rápido ativada
Seria ótimo se o Quick Share (antigo Nearby Share) funcionasse também no Linux. Mesmo que fosse via Chrome
Há pouco tempo conversei com meu irmão sobre celulares, e ele precisa usar iPhone por causa do trabalho
Ele é bombeiro florestal federal nos EUA e passou o verão inteiro passado trabalhando como hotshot; em áreas remotas sem sinal de celular nem roteador Wi‑Fi central, a equipe troca arquivos como mapas via AirDrop antes de se dispersar
Achei bem interessante, mas será que essa ferramenta também consegue lidar com situações como enviar do Android para o iPhone?
A política de privacidade é ótima: https://localsend.org/#/privacy
Dizem: “Você declara ter pelo menos 18 anos, e a empresa não permite o uso do serviço por menores de 18 anos”
Eu queria usar com a família, especialmente com as crianças, então isso atrapalha
É surpreendente que, em 2024, o AirDrop ainda seja uma grande vantagem do ecossistema Apple
Tecnicamente, é uma das funções mais simples possíveis, mas a inovação não está na tecnologia, e sim no alinhamento de interesses que a Apple tem e os concorrentes não têm
Isso porque os concorrentes competem entre si e ao mesmo tempo competem com a Apple
Depois de passar anos rejeitando críticas ao cabo proprietário, a Apple passou a descrever a porta USB-C do iPhone 15 assim após a exigência da UE:
“O novo conector USB‑C permite carregar Mac ou iPad com o mesmo cabo que você usa para carregar o iPhone 15. Você também pode usar o iPhone 15 para carregar Apple Watch ou AirPods. Diga adeus à bagunça de cabos.”
https://www.apple.com/ca/iphone-15/
Isso continua acontecendo porque Apple e Google seguem ampliando a diferença de funcionalidade entre computadores e celulares. No lado dos celulares, o consumidor tem muito menos opções ao usar apps e periféricos de terceiros
Para este software, recomendo o vídeo de instruções de uso do Techno Tim
Ele explica os casos de uso e faz demonstrações nas principais plataformas: https://youtu.be/2ITezMkbAqE?si=-YVJq8iqwFYQ9gMr
A cada poucos meses aparece uma ferramenta nova desse tipo, mas nenhuma delas consegue ser amplamente usada
Esse tipo de vazio existe não só porque não dá dinheiro resolver, nem apenas porque soluções abertas, como sempre, são difíceis de usar
Neste caso, há dinheiro justamente em não resolver. Se existisse uma solução excelente, simples e universal, diminuiria a demanda por sistemas grandes e complexos de armazenamento em nuvem que permitem mineração de dados de todos os arquivos ou exigem assinatura
Provavelmente seria algo como implementar o mesmo protocolo no maior número possível de apps
No fim, só vai haver efeito de rede quando um protocolo suficientemente comum for usado e a maioria dos apps conseguir se comunicar entre si
Claro, não sei se eu realmente teria tempo ou capacidade para ir tão a fundo nisso
Estou usando com satisfação outro projeto open source chamado LANDrop
O problema com o LocalSend é que a velocidade de transferência é baixa. Por algum motivo ele é mais lento que o LANDrop e muito mais lento que SMB ou Croc
A detecção também tem um problema bem estranho. No meu iPad, não consigo enviar para um PC com Windows, mas do PC consigo enviar para o iPad
Reiniciar o servidor, desativar o firewall e outras tentativas não adiantaram. Minha LAN é um pouco complexa por causa de VLANs, então pode ser um problema só meu e por isso não abri uma issue
Mas o mais estranho é que o LANDrop não tem esse mesmo problema
Comparando os dois repositórios no GitHub, o LANDrop parece estar bastante parado, enquanto o LocalSend está bem ativo
https://github.com/LANDrop/LANDrop
https://github.com/localsend/localsend
Não sei o quanto isso importa na prática, mas vale considerar
Pela minha experiência tentando enviar arquivos de um iPhone para uma central automotiva baseada em Android, LocalSend e LANDrop foram as melhores opções
Os outros, como Sharedrop, Snapdrop, Pairdrop e Arc, exigiam internet ou simplesmente não funcionavam direito
Sinto falta do Bluetooth para descoberta, e também para transferências de arquivos pequenos
Você deixa de precisar estar na mesma rede de alguma forma, consegue detectar dispositivos próximos e hoje em dia ele também funciona bem para transferências entre notebook ↔ smartphone
Para arquivos grandes, ainda existe a possibilidade de criar um ponto de acesso por Wi‑Fi
A descoberta baseada em Bluetooth é o ponto forte do AirDrop. Não tenho certeza, mas parece que a Apple cria um Wi‑Fi temporário para transferências grandes e o outro dispositivo se conecta brevemente a ele
O app Teleport [1] usa Zeroconf para descoberta, mas tem pouco suporte multiplataforma
Configurar o Avahi é complicado, gera conflitos e ainda exige um daemon, então talvez seja melhor usar multicast diretamente
Além disso, eu frequentemente esqueço que o Bluetooth já tem recursos de transferência de arquivos embutidos, como vCard
Lembro que só o GNOME mostrava isso, e mesmo assim não era dentro do Nautilus
O WebDAV é parecido e, para mim, funciona muito melhor que SMB. Só que a maioria das pessoas nem sabe que o WebDAV já vem embutido
Ontem um amigo tentou fazer AirDrop de fotos do iPhone 11 Pro dele para o meu iPhone 15 Pro
Encostamos a parte de cima dos celulares e apareceu aquela animação divertida de tremor, mas os arquivos não foram transferidos
Depois ele tocou na minha foto no AirDrop e, do lado dele, apareceu “aguardando confirmação”, mas no meu lado não surgiu popup nenhum
Tentamos de novo várias vezes e até reiniciamos os aparelhos, mas desistimos e no fim enviamos pelo WhatsApp, que ironicamente simplesmente funcionou
A Apple precisa corrigir esse tipo de bug. É uma pena ver que hoje ela parece focar menos em software do que em hardware
Existe alguma ferramenta equivalente com frontend HTTP para que o cliente não precise instalar nada?
Já usei apps assim no passado, mas parece que a manutenção foi interrompida e eles não funcionam mais
python -m http.serverSe for chato configurar Python no host de origem ou a rede for complicada, funciona bem executar o uploadserver[1] no host de destino
Fico receoso com ferramentas cheias de firulas com “magic” no nome que dependem de servidores de relay externos
Mesmo quando não dependem disso, gosto do velho e simples HTTP. Não preciso de nada mais complexo e, na maioria dos casos, também não preciso de criptografia
netcat/socat também podem ser uma solução, mas não estão tão disponíveis em todo lugar quanto Python e HTTP. E eu nunca lembro os encantamentos de linha de comando
[1]: https://pypi.org/project/uploadserver/
https://github.com/localsend/protocol?tab=readme-ov-file#51-browser-url
Ou você quis dizer upload por um frontend HTTP?
python -m http.server 8000Primeiro, você sobe um servidor em um desktop ou notebook que tenha o software, e então qualquer cliente com navegador web (Android, iOS, PlayStation, Kindle etc.) pode fazer upload ou download de arquivos por uma GUI web sem instalar software cliente
Binários pré-compilados para x86-64 Linux, Windows e Mac OS podem ser baixados em https://github.com/akovacs/uploadserver/releases/
Ainda não há binários pré-compilados para Apple Silicon, mas eles podem ser adicionados se houver demanda suficiente, e, se quiser, também é possível compilar a partir do código-fonte com a toolchain nightly do Rust
Em comparação com um serviço de nuvem ou com
python -m http.server 8000, o servidor é escrito em Rust, é muito rápido, bastante simples (o binário compilado e stripado normalmente fica com menos de 3 MB) e transfere tudo pela LAN localParece lidar muito bem com arquivos grandes de mais de 4 GB, e o software só precisa ser instalado em uma única máquina
Para mais detalhes, veja https://news.ycombinator.com/item?id=39665095