It's really great that people are still using it, after almost 6 years since the release! It was first announced here on HN: https://news.ycombinator.com/item?id=7468328. Fun fact: on the same day Facebook announced Oculus acquisition ;)
Also, sorry that the service was down for some of you yesterday - it's using a free Firebase account that has a limit of 100 connections - usually it's enough.
Does everything really work? I've got a car with Android Auto, but I need to pay a small fee to actually enable it (because why not :/) and I'm not sure if it makes sense to pay for it if it's not officially available in my country.
Recently I got annoyed how hard it is to use shrinkwrap in npm and started working on a npm wrapper that would make npm as easy to work with as Ruby Bundler by copying its workflow as closely as possible (https://github.com/szimek/bundlerjs). Thankfully, I don't have to develop it anymore ;) Big thanks to all Yarn developers!
I'm using idb.filesystem.js in https://www.sharedrop.io, so that only very small part of the transferred file is stored in memory, but then without asking users for permission (i.e. using non-persistent storage) you "only" get ~4GB (not sure exactly, I tested it with files up to 1.5GB).
In the sign-up form they state that "Note that each audio request is limited to 2 minutes in length." Does anyone know what "audio request" is? Does it mean that it's limited to 2 minutes when doing real-time recognition, or just that longer periods will count as more "audio requests" and result in a higher bill?
Do they provide a way to send audio via WebRTC or WebSocket from a browser?
I've been using it for almost a year on sharedrop.io (p2p file transfer app) to distinguish peers in the same local network. The code I'm using for finding local IP comes from http://net.ipcalf.com. The app even allows you to select your local IP in case you got more than one, e.g. because of VPN.
Originally, we used socket.io for presence management and PeerJS library (http://peerjs.com), which uses its own websocket server, for WebRTC signaling. We had 2 websocket servers and we really wanted to avoid hosting them ourselves, so we considered 3 third-party services - Pusher, PubNub and Firebase.
Pusher has really awkward presence management that requires you to store user state on your own server, if I understood their docs correctly.
PubNub had similar issue as Pusher, though very recently they released a new feature that allows you to broadcast user state changes without having to store it on your own server.
Firebase is in my opinion the easiest one to use, especially for presence management, because it's a real database and not only a messaging service. It's also actually really easy to use for private messaging as well, even though I think it wasn't originally designed for that. We've changed PeerJS library to use Firebase for WebRTC signaling, which is basically a form of private messaging. We've also used Firebase in some of our previous projects - e.g. https://github.com/cowbell/presence-firebase.
Yeah, it probably could. I think that https://www.sharefest.me/ has faster transfer speeds, especially that it allows you to download the same file from more than one peer.
It seems so. I was a bit surprised myself, but this data is taken from the info that browsers send to each other to determine the best path for P2P connection. The actual code for determining local IP is taken from http://net.ipcalf.com.
Pretty cool. It does upload the files to S3 though, right?
ShareDrop in theory should be much faster (especially on local network) and more secure, as it sends files directly between devices without any server in the middle.
It depends on what you mean by "mobile" :) It works between Chrome on Android and desktop. Unfortunately, Safari (neither desktop nor mobile) doesn't support WebRTC.
At this moment the app works only in Chrome and Opera, because Firefox doesn't support HTML5 FileSystem API. There's a polyfill for that, but we had some issues with it, so we've decided to release it anyway. We'll continue working on Firefox support. The whole source code is available on GitHub (https://github.com/cowbell/sharedrop), so anyone can help.
Sure, we mention it even in the README (https://github.com/cowbell/sharedrop/blob/master/README.md). There's probably a workaround if you have a phone with internet access - you could create a local WiFi network on it and connect to ShareDrop through it. Haven't tried it though.