Hacker News new | past | comments | ask | show | jobs | submit login
Browserver: A web server inside your web browser (browserver.org)
123 points by wyclif on Oct 11, 2012 | hide | past | favorite | 17 comments



Reminds me of Opera Unite[0], where you could build services available externally in HTML and JavaScript. It even has NAT traversal. It never gained much traction, and I believe Opera no longer develops Unite.

[0]: http://unite.opera.com/overview/


Didn't know about this one. Thanks!


If you re-read the early cyberpunk scifi from Gibson and Stephenson, one of the characteristics of their vision we're still missing is execution at the edges. There was a strong concept of "my virtual space" in which space owners control not just a visual presentation layer, but the full execution stack.

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.


There are things like Freenet and I2P.

And thanks to WebRTC we may see these sorts of things running in the browser soon.


As discussed previously on HN: http://news.ycombinator.com/item?id=4366555


I've actually created something similar myself, that does support streaming and blob serving.

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...


Looking at the larger picture in this context we are moving to a world where Browser == computer.


Yes, and we're slowly loosing all the advantages of having dedicated browsers in the process.


yep. I guess that is what HTML5 is doing and Google is banking on it by making the ChromeBook.


I tried using this lib to make a self aware browser which can also serve requests to other browsers. but dropped it cause it didn't go well wit the sandbox model.


Wow... this is awesome. But I can't think of any ways how this could be really useful. Or maybe I need more imagination.


This site allows us to return an arbitrary HTTP response to be displayed in other users' browsers?

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.


IIRC it's just using websockets to sort of proxy http requests. They still go through a central server.

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.


Data API will use SCTP and not TCP so there are some considerations for implementing HTTP over SCTP based channel. Also it depends on what Congestion control the SCTP implements/enables.

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...


PeerConnection API supports traditional NAT traversal mechanisms though there are a very, very, very small number of cases that can be handled by a privileged user that can't be emulated in the browser.


What do you mean? Do you mean for a non-p2p applications or in general?


This reminds me of the excellent Firefox extension AllPeers from years ago that had this feature (along with some sort of p2p chat). I miss it sorely to this day.

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...




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: