When I switched to Android devices form iOS a while back, I found myself missing a feature I no longer had and that was Airdrop. This gave me the ability to send files to other iOS devices that were nearby. This was a key feature to my workflow because I used multiple devices and used this feature to transfer photos, audio files and more. I could no longer do this on Android and it was quite disappointing.
Then I discovered Snapdrop. A Progressive Web App that acts the same way as Airdrop, allowing you to visit the link and share files between devices.
What is Snapdrop?
Snapdrop: local file sharing in your browser. Inspired by Apple's Airdrop.
Install Snapdrop using Docker Compose
You can use the following Docker Compose stack to install Snapdrop. If you do not need Nginx, simply remove it from the stack.
version: "3" services: node: image: "node:lts-alpine" user: "node" working_dir: /home/node/app volumes: - ./server/:/home/node/app command: ash -c "npm i && node index.js" nginx: build: context: ./docker/ dockerfile: nginx-with-openssl.Dockerfile image: "nginx-with-openssl" volumes: - ./client:/usr/share/nginx/html - ./docker/nginx/default.conf:/etc/nginx/conf.d/default.conf - ./docker/certs:/etc/ssl/certs - ./docker/openssl:/mnt/openssl ports: - "8080:80" - "443:443" env_file: ./docker/fqdn.env entrypoint: /mnt/openssl/create.sh command: ["nginx", "-g", "daemon off;"]
Final Notes and Thoughts
Snapdrop has been around for nearly 3 years and has been actively maintained ever since. It's a great solution to quickly transfer files between devices on the fly.
If you find Snapdrop useful, be sure to visit the Snapdrop Github repo and give the project a star! Leave your thoughts and comments below!