awesome-repositories.com
Blog
MCP
awesome-repositories.com

Discover the best open-source repositories with AI-powered search.

ExploreCurated searchesOpen-source alternativesSelf-hosted softwareBlogSitemap
ProjectMCP serverAboutHow we rankPress
LegalPrivacyTerms
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
SnapDrop avatar

SnapDrop/snapdrop

0
View on GitHub↗
19,715 stars·1,881 forks·JavaScript·GPL-3.0·25 viewssnapdrop.net↗

Snapdrop

Snapdrop is a browser-based peer-to-peer file sharing tool that transfers files directly between devices on the same local network without uploading to any intermediate server. It operates as a progressive web app, meaning it works across devices without installation, and uses end-to-end encryption to ensure only the sender and receiver can read the content being transferred.

The application establishes direct browser-to-browser connections using WebRTC, splitting large files into chunks for real-time streaming with progress tracking. It discovers nearby devices on the same subnet through local network discovery, and caches application assets via service workers for offline-capable functionality. The entire transfer model is serverless, with zero persistence on any server, ensuring privacy and minimal infrastructure.

Snapdrop supports sending and receiving individual files or entire folder structures while preserving directory hierarchy, with the ability to accept or ignore each incoming transfer. For users who want full control over their hosting and privacy, the application can be deployed as a private instance using a Docker container that packages the signaling server and static assets.

Features

  • Local Peer-to-Peer - A progressive web app that transfers files directly between devices on the same local network using peer-to-peer connections with no server-side storage.
  • Browser-Based File Transfers - A browser-based tool that sends files between devices on the same local network without uploading to any intermediate server.
  • Streaming File Chunking - Splits large files into smaller chunks for real-time streaming over WebRTC data channels with progress tracking.
  • Peer-to-Peer Storage Models - Transfers data directly between peers with zero persistence on any server, ensuring privacy and minimal infrastructure.
  • Peer-to-Peer File Sharing - Send one or more files from the browser to another device on the same local network using peer-to-peer connections.
  • Local Network Discovery - Discovers nearby devices on the same subnet using mDNS or WebRTC signaling without external servers.
  • Browser-Based Local Transfers - Transferring files directly between devices on the same local network without uploading to a server.
  • WebRTC Data Channels - Establishes direct browser-to-browser data channels for file transfer without intermediate servers.
  • End-to-End Encryption - An application that encrypts file transfers between sender and receiver so only the intended parties can read the content.
  • File and Blob APIs - Uses the File and Blob APIs to read, write, and reconstruct files entirely within the browser sandbox.
  • Browser-Based P2P Transfers - Sending files between browsers using direct connections with no intermediate storage.
  • Docker Container Deployments - Packages the signaling server and static assets into a single container for self-hosted private instances.
  • Self-Hosted Instances - Run the application on personal infrastructure using a Docker container for full control.
  • Incoming Transfer Acceptances - Accept or ignore each incoming file transfer from another device on the local network.
  • Local Network Folder Transfers - Transfer an entire folder structure to another device on the local network while preserving the directory hierarchy.
  • Offline Caching - Caches application assets in the browser for offline-capable progressive web app functionality.
  • Local File Sharing PWAs - Using a browser-based app that works across devices without installation for local file transfers.
  • Docker-Deployable File Servers - A Docker-deployable application that gives users full control over their local file sharing infrastructure.

Star history

Star history chart for snapdrop/snapdropStar history chart for snapdrop/snapdrop

How this analysis was created: This summary and feature list were written by an AI model that read the project's README and public documentation pages. Each feature links to the documentation it came from; stars, license and language come straight from the GitHub API. The model does not read the source code, and the analysis is refreshed when the project is re-analysed. Learn more on our About page.

AI search

Explore more awesome repositories

Describe what you need in plain English — the AI ranks thousands of curated open-source projects by relevance.

Start searching with AI

Frequently asked questions

What does snapdrop/snapdrop do?

Snapdrop is a browser-based peer-to-peer file sharing tool that transfers files directly between devices on the same local network without uploading to any intermediate server. It operates as a progressive web app, meaning it works across devices without installation, and uses end-to-end encryption to ensure only the sender and receiver can read the content being transferred.

What are the main features of snapdrop/snapdrop?

The main features of snapdrop/snapdrop are: Local Peer-to-Peer, Browser-Based File Transfers, Streaming File Chunking, Peer-to-Peer Storage Models, Peer-to-Peer File Sharing, Local Network Discovery, Browser-Based Local Transfers, WebRTC Data Channels.

What are some open-source alternatives to snapdrop/snapdrop?

Open-source alternatives to snapdrop/snapdrop include: cowbell/sharedrop — Sharedrop is a browser-based file drop application for transferring files directly between devices without requiring… kern/filepizza — Filepizza is a web-based peer-to-peer file sharing application that enables direct browser-to-browser data exchange.… seemoo-lab/opendrop — Opendrop is a Python implementation of the AirDrop protocol used for transferring files and links between devices over… robinlinus/snapdrop — Snapdrop is a web-based local file sharing tool and progressive web app designed for transferring files between… tonyantony300/alt-sendme — alt-sendme is an accountless peer-to-peer file transfer tool designed for sending files and folders directly between… warner/magic-wormhole — Magic-wormhole is a peer-to-peer file transfer tool used to send files, directories, and text strings between…

Open-source alternatives to Snapdrop

Similar open-source projects, ranked by how many features they share with Snapdrop.
  • cowbell/sharedropcowbell avatar

    cowbell/sharedrop

    10,735View on GitHub↗

    Sharedrop is a browser-based file drop application for transferring files directly between devices without requiring software installation or account registration. It uses WebRTC to establish peer-to-peer data channels, allowing files to be exchanged between different operating systems without routing traffic through a central server. The project provides mechanisms for both local and remote connectivity. It identifies active users sharing the same public IP address for immediate local device discovery and allows the creation of private sharing rooms via unique session links for users on diff

    JavaScript
    View on GitHub↗10,735
  • kern/filepizzakern avatar

    kern/filepizza

    10,106View on GitHub↗

    Filepizza is a web-based peer-to-peer file sharing application that enables direct browser-to-browser data exchange. It utilizes WebRTC to establish connections between devices, allowing files to be sent without uploading data to a central server. The project provides a password-protected file sharing mechanism that secures transmissions via symmetric-key stream encryption. It includes a containerized signaling server that can be self-hosted to coordinate connections between peers and facilitate NAT traversal across restrictive networks and firewalls. The application supports multi-file tran

    TypeScript
    View on GitHub↗10,106
  • seemoo-lab/opendropseemoo-lab avatar

    seemoo-lab/opendrop

    9,662View on GitHub↗

    Opendrop is a Python implementation of the AirDrop protocol used for transferring files and links between devices over wireless connections. It functions as a peer-to-peer wireless file transfer system and a tool for automating the exchange of network passwords using specialized handshake mechanisms. The project enables the discovery of nearby hardware by scanning for Bluetooth Low Energy advertisement packets and searching local subnets for specific service signatures. It establishes direct communication links through monitor mode and raw frame injection to move data without requiring a stan

    Pythonairdropappleawdl
    View on GitHub↗9,662
  • robinlinus/snapdropRobinLinus avatar

    RobinLinus/snapdrop

    19,712View on GitHub↗

    Snapdrop is a web-based local file sharing tool and progressive web app designed for transferring files between devices on the same local network. It functions as an end-to-end encrypted transfer tool that allows users to move data across different devices and operating systems without manual configuration. The service supports self-hosting through a containerized deployment model, allowing users to run private instances of the file sharing service on their own infrastructure. This ensures that data transfers remain within a private local network. The system uses a signaling server for local

    JavaScript
    View on GitHub↗19,712
  • See all 30 alternatives to Snapdrop→