I've been experimenting with some javascript classes that mimic the structure of
mapnik's Layer/Style/Rule classes and render OSM data (via GeoJSON) to a <canvas> element. I've also finally taken a look at how github works, so I've decided to
share the initial code there in case people are interested. If you don't want to check the code out for yourself there's
a demo page here (tested in Firefox and Safari only, so far).