title: How to link a HTML5 canvas model with a MVVM/MVP data framework
body: <p>After numerous occasions of trying to clear my thoughts on this matter I thought it'd be best if I turn to some experts who might be able to point me in the right direction.</p>
  
  <p>The concept is as follows, a rather basic idea in concept:</p>
  
  <ol>
  <li>The latest data is retrieved from the database from the server side at regular intervals.</li>
  <li>This data is put into a model managed by something like Backbone.js, Ember.js or KnockoutJS.</li>
  <li>On the update the elements on the canvas are updated with the relevant information (the canvas is managed by something like KineticJS or Fabric.js).</li>
  <li>The potential to reverse this process, sending data back up to the server from changes on the canvas.</li>
  </ol>
  
  <p><strong>So my question is this</strong>: is it practical to link the canvas model (that of the canvas library) with that of one of the MVVM/MVP models? The ones I've looked at seem to focus on HTML elements (and I've dabbled with KnockoutJS previously in that context) but this time I'm trying to manage canvas elements instead. If it is (or isn't) possible, or if a home grown solution is required, what should I look out for, what pitfalls are there, what may I have I missed or forgotten?</p>
  
  <p>It seems <a href="https://stackoverflow.com/questions/5673220/how-to-bind-a-backbone-js-click-event-to-a-view-rendered-inside-a-html5-canvas">something similar came up</a> just under a couple of years ago, has it changed since then or is it still a matter of home growing the solution? Can the answers in there be expanded upon?</p>
  
  <p>I'm not looking for complete solutions, but for someone who has some experience under their belt to give me some direction (I'm the only one within work who has any experience in this area at all and without anyone to talk it through with or, to even grasp an understanding of it, I'm running myself in circles).</p>
  
  <p>Thanks in advance.</p>