& information • 3mm SMEs (99% of market) with no access to easy, affordable finance management software • Must create intuitive, beautiful, fun yet sophisticated, enterprise-ready application • Must do so in “lean startup” way
Backbone and Ember.js • It was beginning of spring ’13 • Backbone had a huge community but it would need too much work on our side • Angular and Ember.js were both new at the time and they were almost the same size when it comes to community and adoption • At the end we chose Ember.js because:
so it’s quite familiar • Convention over configuration • Good documentation • Provides the tools for abstraction & decoupling • Provides a great support library (stuff like enumerables and utility methods, similar to ActiveSupport if you are a ruby dev) • Optimized for developer happiness (Yehuda Katz’s own words)
the server-side MVC • Based on SproutCore which is similar to Cocoa • A Rich Object Model • Utilities gathering best practices and common idioms • Data Binding
team member Stefan Penner • Provides a project structure • Package management via Bower • Grunt based workflow • Transpiles ES6 Modules • LESS,SASS,Stylus and CoffeeScript support • JS Linting via JSHint • Anything else you need through Grunt tasks • Testing https://github.com/stefanpenner/ember-app-kit
‘import’ and ‘export’ • Named exports • You can use name resolving for loading dependencies. • We are transpiling ES6 modules to require.js until the standard is matured enough and natively supported by browsers.
• Everything provided by Ember App Kit • Generators • New asset pipeline based on broccoli • Faster asset compilation! • Better organization through more “convention over configuration” • Will become a part of Ember.js when it gets ready for production http://www.ember-cli.com
applications that run in the browser • Similar to Gulp but focused on asset compilation • Still beta but getting close • Like grunt but for specifically for compiling assets for browsers https://github.com/joliss/broccoli