As web applications gain increasingly rich and complex user interfaces, a new breed of tools called "client-side MVCs" have emerged to help developers be more productive and build these user interfaces more easily. Ember.js strives to be the best choice for these "ambitious" web applications by providing a framework that eliminates boilerplate, enforces good code organization, and provides tools for common practices.
In this course, we'll start by looking at some sites built with Ember.js and learning the principles that underly the framework. Next, we'll examine each major area of Ember.js one at a time: templates, controllers, and models. Finally, we'll connect our Ember.js app to a backend web server, and explore some of the more advanced tools Ember offers. As we go, we'll build a blogging application together.