There is a really interesting application of this model I would like to explore, where in one reproduces the functionality of X11 in a web browser. While not necessarily implementing the X protocol, one could easily build a Canvas widget that provides the entire Canvas 2d and 3d context APIs over a websocket. It is pretty trivial to implement on my current stack, and makes it possible for:
- 2 or more people to draw on a shared surface
- build a 3d accelerated application that runs on a remote server
- layout virtual desktops that span multiple browser windows or desktops
- construct a massive shared virtual workspace, like a virtual office building
Maybe I'll build it today.