- The main goal of this version is to support Marionette 3, update dependencies and perform some dead code removal in order to generate a smaller bundle.
- Implement Saucelabs to assess browser compatibility
- Increase code coverage
- The main goal of this version is update html-to-vdom dependency, so that the bundle will no longer include lodash.
- Distribute the browser version
- Implement Saucelabs to assess browser compatibility
- Increase code coverage
- The main goal of this version is to implement Browser support.
- Distribute the browser version
- Implement Saucelabs to assess browser compatibility
- Increase code coverage
- The main goal of this version is to improve the test suite and add support to
Marionette.ItemView
andMarionette.CompositeView
.
- Added support for both
Marionette.ItemView
andMarionette.CompositeView
through a reusable mixin. - Brought test suite from Backbone 1.1.2.
- Brought
Marionette.CompositeView
tests from Marionette 2.3. - Added support for templates that don't have a sole root element as
<a>one</a><b>two</b>
orI'm free
. - Started using
outerHTML
to retrieve the root element template to tacke the challenge above. - Performance was significantly improved. Added perf test.
- Add support to Browser's Marionette and AMD through perhaps UMD.
- The main goal of this version is to prove the concept of Virtual DOM over Marionette Views as it was suggested on a Marionette.js thread
- Based on virtual-dom
- Uses html-to-vdom to convert any HTML template to VDOM.
- Each time the view needs to render, it will go through the following process (specified in
attachElContent
method):- generate a new virtual DOM element from the newly generated HTML.
- diff this new virtual DOM element with the current one and obtain a patch.
- patch the current real DOM with it
- @samccone very kindly pitched in, bringing the unit test suite from Marionette and Backbone in order to assess which work needs to be done for the solution to be more solid and perhaps get released.
- Out of 90 test cases we have only gotten 3 failures, which is pretty impressive.
- I was able to verify it does really work by comparing DevTools output for 2 scenarios, virtual vs non-virtual:
Notice the increasing number of Nodes, from 628 to 629 in 10s. The Used JS Heap is pretty high and increasing.
Notice the number of Nodes stays on 403 over the same 10s. There is also plenty of more JS happening (2nd image) but the Used JS Heap is much lower.
- Fix the 3 unit tests that are failing.
- Improve the test suite.
- Come up with virtual DOM implementation for other Marionette views.
- Strive for conceiving a reusable virtual DOM View to be extended by the leaf Marionette views (either by inheritance or mixin).