Slide 1

Slide 1 text

Image Credit: http:/ /jamiebikies.github.io/packaging-ember-libs/images/ember.png Building Real Ambitious Applications using Ember, CouchDB and Lucene

Slide 2

Slide 2 text

Kaushik Bhat Fullstack @ Artoo ! @kaushikb9

Slide 3

Slide 3 text

Problem Ember - Framework for building “Ambitious” Applications. How?

Slide 4

Slide 4 text

To-Do App - ‘Hello World’ of the MVC World is this enough?

Slide 5

Slide 5 text

and then there are… All Rocking it with Ember!!

Slide 6

Slide 6 text

How about a more human intermediate example?

Slide 7

Slide 7 text

Our Credibility? 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

Slide 8

Slide 8 text

Important Elements Modules Backed by Data Custom Views (Unit) Testing

Slide 9

Slide 9 text

Demo ! (… it may be NSFW)

Slide 10

Slide 10 text

Ember-CLI The coolest thing to happen to Ember since… !

Slide 11

Slide 11 text

Assets Compilation

Slide 12

Slide 12 text

Modules ES6 Module Transpiler Tomorrow’s ES6 syntax Today

Slide 13

Slide 13 text

apps and addons app-1 • controllers • routers • templates addons • components • adapters • magic-library app-2 • controllers • routers • templates • components Modules

Slide 14

Slide 14 text

Demo Modules Data - CouchDB App Addons

Slide 15

Slide 15 text

What we have embedded JSON ! ! ! ! { "_id": "a0Pdnwz", "caption": "To the guy who posted that he lost 15 Kg in two weeks, go see a doctor", "images": [ { "type": "normal", "link": "http://img-9gag-lol.9cache.com/photo/a0Pdnwz_460s_v1.jpg" }, { "type": "large", "link": "http://img-9gag-lol.9cache.com/photo/a0Pdnwz_700b_v1.jpg" } ], "link": "http://9gag.com/gag/a0Pdnwz", "votes": { "count": 2328 } }

Slide 16

Slide 16 text

What Ember wants sideloaded JSON { "_id": "a0Pdnwz", "caption": "To the guy who posted that he lost 15 Kg in two weeks, go see a doctor", "images": [ { "id": 101, "type": "normal", "link": "http://img-9gag-lol.9cache.com/photo/a0Pdnwz_460s_v1.jpg" }, { "id": 102, "type": "large", "link": "http://img-9gag-lol.9cache.com/photo/a0Pdnwz_700b_v1.jpg" } ], "link": "http://9gag.com/gag/a0Pdnwz", "votes": { "id": 201, "count": 2328 } }

Slide 17

Slide 17 text

No content

Slide 18

Slide 18 text

Custom Adapters and Serializers Image Credit: http:/ /en.wikipedia.org/wiki/PlayStation_3_accessories

Slide 19

Slide 19 text

Components Twitter Typeahead as a Component

Slide 20

Slide 20 text

Testing Unit Testing is your best friend. Plain, simple and fast.

Slide 21

Slide 21 text

Questions github.com/kaushikb9/JSFoo2014

Slide 22

Slide 22 text

Thank You!