Yes it is fairly easy. But my engine is not JUST for canvas. You can switch entities from canvas to DOM in seconds. There are also components that make things a lot easier such as collision detection, audio, sprite maps, click maps, mouse events. As well as lots of performance optimizations such as using a Spatial Hash Map for all the entities and redraw regions on canvas so only segments that change are redrawn.