You seem to have two very conflicting wishes here: 1) To have fun 2) To write a cross-platform web-base app with good HTML canvas inter-op ... If you really want to deliver this cross-platform app, then it seems that's going to be more work than fun, although no doubt good tool/framework choice can help minimize the headaches. For a fun project it seems better to avoid all of the things that you already know are goin…
Limit ambitions and focus on getting velocity into roughly the right direction. Have fun and worry not about having fun.