Looking forward to see what you make of this. It would be cool to have a really nice 2d version of Quake. FrikaC made a cool game called Qake that you might want to check out:
http://www.frikac.com/?page_id=9
I was doing a lot of canvas stuff a while ago and found it a generally liberating coding experience, since all you need is a text editor and a web browser (I used Notepad++ and Chrome). I made MANY little games and experiments, which I will upload if I finally get some web hosting sorted out.
There were a few things, however, that I hated about it.
1. browsers have different ideas of standards, or are at different states of implementation. The more complex your stuff gets, the more you start to encounter incompatibilities between different browsers and end up wasting time trying to fix stuff that should work according to standards, but doesn't
2. browser security is a pain in the ass to deal with. If you want to modify any data on a canvas, you make it "dirty". This means that often you cannot write back to the canvas for some security reason. This was fucking infuriating. Look up CORS for more info on this.
3. Performance. Canvas has no real fast blitting routines. You can draw lines and shapes etc. but they are anti-aliased. AFAIK there is no way to turn them off. This, along with javascript lacking fast performing arrays (arrays are basically just the same as the standard objects, which are hash-maps) limits the speed at which you can run stuff. What I was doing wasn't especially taxing, and I had allocated my memory in one chunk, rather than as I needed it, so I didn't have any real performance problems, but currently performance is shit compared to native code. NaCl might be worth a look if you want to do some serious coding, but then you are limited (currently) to Chrome running on x86.
4. Local file access is the most awful thing ever. Currently only Chrome has any reasonable semblance of local file access. There are some web standards that allow you to create local databases or use local storage, but it's very limited (understandably... you don't want a 500mb file on your HDD used essentially as a cookie, and you don't want some website uploading random shit or illegal files to your cache without your permission). What I wanted to try doing, and might still try, is to write a Quake level editor using Canvas and OpenGL so that I can make maps anywhere I have a web browser and reasonably modern video chip. The limiting factor seems to be local file access. You don't want to be downloading big chunks of data like models, textures etc. from a server, and there are also legal reasons why it would be best to avoid having the Quake PAK files online. You could run a local server, but that's kind of a pain in the ass.
Anyway, despite what some people seem to think about javascript, canvas and webgl, I reckon they are pretty neat technologies and will enable a lot of cool things to be done online in the coming years (there is already a huge amount of cool stuff that can be done.)