<p>Developers these days are spoiled with choice when it comes to selecting an <strong>MV* framework</strong> for structuring and organizing their JavaScript web apps.</p>
<p>Backbone, Ember, AngularJS, Spine... the list of new and stable solutions continues to grow, but just how do you decide on which to use in a sea of so many options?</p>
<p>To help solve this problem, we created <ahref="https://github.com/addyosmani/todomvc">TodoMVC</a> - a project which offers the same Todo application implemented using MV* concepts in most of the popular JavaScript MV* frameworks of today.</p>
<ahref="https://twitter.com/share"class="twitter-share-button"data-count="none"data-url="http://todomvc.com"data-text="TodoMVC - Helping you select an MV* framework - Todo apps for Backbone.js, Ember.js, AngularJS, Spine and many more"></a>
<ahref="https://twitter.com/share"class="twitter-share-button"data-count="none"data-url="http://todomvc.com"data-text="TodoMVC - Helping you select an MV* framework - Todo apps for Backbone.js, Ember.js, AngularJS, Spine and many more"></a>
<h2style="text-align:center;font-weight:300">Scroll down for 30+ more framework apps in Labs</h2>
<h2style="text-align:center;font-weight:300">Scroll down for 30+ more framework apps in Labs</h2>
</div>
<hr>
<divclass="row">
...
...
@@ -124,18 +124,18 @@
</div>
<hr>
<divclass="row">
<divclass="span4">
<divclass="span4">
<h2>What's new in 1.0</h2>
<ulclass="whats-new">
<ulclass="whats-new">
<li>All main apps have been completely rewritten for consistency</li>
<li>Routing has been added to many of these</li>
<li>We now have 30+ apps being worked on in Labs</li>
<li>We now have 30+ apps being worked on in Labs</li>
<li>We're using a kick-ass new template</li>
<li>Framework authors and contributors have been consulted to ensure our apps adhere to best practices</li>
<li>We're helping AMD users by adding AMD versions of many apps</li>
</ul>
</div>
<divclass="span4">
<divclass="span4">
<h2>Selecting a Framework</h2>
<p>Once you've downloaded the latest release and played around with the apps, you'll want to decide on a specific framework to try out.</p>
<p>Study the syntax required for defining models, views and (where applicable) controllers and classes in the frameworks you're interested in and try your hand at editing the code to see how it feels using it first-hand.</p>
...
...
@@ -147,7 +147,7 @@
<p>If so, feel free to fork the repo, read our <ahref="https://github.com/addyosmani/todomvc/wiki">contribution guidelines</a>, and submit a pull request — we'll be happy to review it for inclusion.</p>
<p>Make sure you use the <ahref="https://github.com/addyosmani/todomvc/tree/master/template">template</a> as a starting point and read the <ahref="https://github.com/addyosmani/todomvc/wiki/App-Specification">app specification</a>.</p>
<p>
<aclass="zocial small gray"href="https://github.com/addyosmani/todomvc/wiki">Submit Pull Request »</a>
<aclass="zocial small gray"href="https://github.com/addyosmani/todomvc/wiki">Submit Pull Request »</a>
</p>
</div>
</div>
...
...
@@ -178,10 +178,10 @@
<ahref="labs/architecture-examples/javascriptmvc/todo/todo/"data-source="http://javascriptmvc.com"data-content="JavaScriptMVC is an open-source framework containing the best ideas in jQuery development. It guides you to successfully completed projects by promoting best practices, maintainability, and convention over configuration.">JavaScriptMVC</a>
</li>
<li>
<ahref="labs/architecture-examples/stapes/"data-source="http://hay.github.com/stapes"data-content="Stapes is a (really) tiny Javascript MVC micro-framework (1.7kb) that has all the building blocks you need when writing an MVC app. It includes a powerful event system, support for inheritance, use with AMD, plugin support and more. A RequireJS Todo application is <a href='dependency-examples/stapes_require/index.html'>also</a> available.">Stapes</a>
</li>
<li>
<ahref="labs/architecture-examples/epitome/"data-source="http://dimitarchristoff.github.com/Epitome"data-content="Epitome is a new extensible and modular open-source MVP* framework, built out of MooTools Classes and Events.">Epitome</a>
<ahref="labs/architecture-examples/stapes/"data-source="http://hay.github.com/stapes"data-content="Stapes is a (really) tiny Javascript MVC micro-framework (1.7kb) that has all the building blocks you need when writing an MVC app. It includes a powerful event system, support for inheritance, use with AMD, plugin support and more. A RequireJS Todo application is <a href='dependency-examples/stapes_require/index.html'>also</a> available.">Stapes</a>
</li>
<li>
<ahref="labs/architecture-examples/epitome/"data-source="http://dimitarchristoff.github.com/Epitome"data-content="Epitome is a new extensible and modular open-source MVP* framework, built out of MooTools Classes and Events.">Epitome</a>
</li>
<li>
<ahref="labs/architecture-examples/troopjs/"data-source="https://github.com/troopjs/"data-content="TroopJS attempts to package popular front-end technologies and bind them with minimal effort for the developer. It includes jQuery for DOM manipulation, ComposeJS for object composition, RequireJS for modularity and Has.js for feature detection. On top, it includes Pub/Sub support, templating, weaving (widgets to DOM) and auto-wiring.">TroopJS</a>