Browserver: A web server inside your web browser
browserver.org
browserver.org
Our architectures are still dominated by central server farms, in which we give up our data and cede control to the server operators. There are few experiences where we have a true, decentralized experience with execution controlled by the clients. BitTorrent and it's predecessors are the closest we've come so far, but AFAIK it's all limited to peer to peer file transfer.
Every time I start to explore these thoughts, the browser is the obvious platform for the first iterations. I'm glad to see initial designs appearing, and look forward to seeing a truly decentralized and peer to peer service that don't have critical dependencies on central servers.
And thanks to WebRTC we may see these sorts of things running in the browser soon.
I haven't officially 'announced' it yet, as I was planning to make a nice drag and drop Chrome FileSytem API way of setting up a website and hadn't got around to it. So it's still fairly immature (although I think it supports most of what the linked system does).
If you're interested, it's here: https://github.com/kybernetikos/yobets
I've designed it to run on heroku, and it sets up virtual hosts for each client. I have a lot of ideas for how this could be used, here's two: 1. using in browser encryption stream your location acquired by the geo location api from your mobile phone but only to your friends who have the right key or 2. any time you want to serve a large file to a bunch of friends, just fire up one of these servers on heroku (first process is free) and serve it...
We could all set cookies under the browserver.org domain for one thing.
Perhaps we could return some Javascript to be cached in browsers and self-replicate among users of this page. Not so sure about that one though.
http://news.ycombinator.com/item?id=4366555
Also, when PeerConnection gets its Data api implemented this will be more literally possible. You could connect to someone with minimal routing from a server and then serve basically whatever peer to peer.
You know, your friends could share metadata among themselves and a webapp in your browser could provide you real time access to the files associated with that metadata when they [or their server] is online, etc.
I wish someone had come up with an alternative.
http://en.wikipedia.org/wiki/AllPeers http://techcrunch.com/2006/01/03/allpeers-is-the-firefox-kil...
There are also NAT traversal considerations which would make connection setup longer when compared to HTTP based infrastructure. Of course, as the underlying transport matures over time (or people build extensive libraries in JS to over come the deficiencies), we will see if data API will become larger than its current vision (of serving data in-band with multimedia)
[RELIABLE vs UNRELIABLE DATA CHANNEL]http://tools.ietf.org/html/draft-ietf-rtcweb-data-channel-01...
[CONGESTION CONTROL] http://tools.ietf.org/html/draft-ietf-rtcweb-data-channel-01...