Slide 1

Slide 1 text

Building Ambitious Ember Applications! Kaushik Bhat & Sameer Segal Artoo (www.artoo.in) Image Credit: http://boonconic.com/content/images/2014/Feb/C_nim.gif

Slide 2

Slide 2 text

Ambitious? • 613 Coffee Files • 225 Models • 108 Routes • 187 Controllers • 147 Templates • 5 Adapters & 2 Serializers Image Credit: http://static.minutewith.com/img/couchdb.png | http://img.scoop.it/60POAMcoOs1QpSs9vvthV4XXXL4j3HpexhjNOf_P3YmryPKwJ94QGRtDb3Sbc6KY http://blogs.encamina.com/returnvalue/wp-content/uploads/sites/7/2014/05/nodejs_logo.png | http://lucene.apache.org/images/lucene_logo_green_300.png

Slide 3

Slide 3 text

• Doesn’t Ember have Active Generation? • Yes, we have tried to do the bare minimum and not fight Ember

Slide 4

Slide 4 text

Demo

Slide 5

Slide 5 text

Amount of time spent by users on the platform

Slide 6

Slide 6 text

Full Text Search using Lucene

Slide 7

Slide 7 text

No content

Slide 8

Slide 8 text

Forms through components and ember-validations

Slide 9

Slide 9 text

Using ACE editor as a component

Slide 10

Slide 10 text

5 Ember App-lets • Split the functionality into 5 Ember app-lets that are loaded at runtime to make a Giant Ember Application • Modifications to Ember App Kit • Ember Resolver • Grunt Options

Slide 11

Slide 11 text

Adapter & Serializers • Extending RESTAdapter • Embedded Payloads, Polymorphic types • CouchDB • Lucene • Nodejs • By sticking to Ember conventions, we were able to improve our APIs

Slide 12

Slide 12 text

Components • Graphs (nvd3 + d3) • Forms (inspired by ember-forms) • ... and everything in between

Slide 13

Slide 13 text

Testing • Unit testing with QUnit • Setup `moduleFor` • Basic spies to speed up your tests

Slide 14

Slide 14 text

Q & A