So after diving into the subject of nested models/collections in Backbone.js and being very frustrated at how Backbone doesn't handle them, I eventually discovered a comment by Backbone.js creator, Jeremy Ashkenas on GitHub:
Until recently I've been less than enthusiastic about Drupal 8, but I've changed my tune (and of course nothing is perfect; I am still a bit concerned/sad that Drupal 8 could possibly be leaving some smaller sites behind, but this is a ship that has likely sailed, so c'est la vie).
Grab snippets from multiple webpages and assemble, save, and load them all in a customized display grid.
Many of us have a handful of pages we revisit many times throughout a single day. What if instead of needing many separate tabs for all your pages, you could grab just the part you actually focus on for each page and then display all these different focal points from all these different pages in a single tab? This is exactly what ScrapeGrid does.
Works in your browser. No plugins. Coming soon.
Watch the preview and sign up for news and updates.
I've happily reached a significant milestone in the development of my project, finishing a foundational layer that by itself could be valid to open source at some point.
Currently, I am using localStorage for my data store, and it's been working great for development purposes - it's basically a mock mongoDB for me (I'm storing nested objects in localStorage using a small jQuery library called jStorage). I'm purposely putting off the server side of this application because I want to be able to use the Symfony 2.3 LTS release, which is scheduled for May as middleware between the client-side and mongoDB. The temptation to use node.js is strong, and arguably would be the most performant option, but the reasons for picking Symfony are probably obvious to any Drupal developer.