Slide 1

Slide 1 text

Marionette Building your first app

Slide 2

Slide 2 text

Building your first app Cover core Marionette concepts Routing Layouts Event handling Rendering data

Slide 3

Slide 3 text

Who am I? Lead developer Pebble Income Generation for Schools Python/Django Web apps

Slide 4

Slide 4 text

JavaScript Framework Generate HTML Server integration Respond to user input

Slide 5

Slide 5 text

Why Marionette? Backbone.js No magic … ok maybe a little Active development Helpful, friendly community

Slide 6

Slide 6 text

Microblog Simple list of tweet-like objects Click on an item to view connected comments Won’t look pretty Focus on the HTML we need

Slide 7

Slide 7 text

Marionette - Application Links your page to your app Starts your JavaScript app Initialise your routes and layouts Feed data into your app

Slide 8

Slide 8 text

Marionette - AppRouter Map URL fragments to methods Wire up your controller

Slide 9

Slide 9 text

Marionette - Controller Decide what screens to show Handle top-level data flow

Slide 10

Slide 10 text

Marionette - Views Renders data Event handling User Input Data change

Slide 11

Slide 11 text

Backbone - Models Your data Binds your application to server Fetch Save

Slide 12

Slide 12 text

Backbone - Collections Like models but lists Optional type-checking Helpers

Slide 13

Slide 13 text

Marionette - Event/Trigger Handle user input Propagate view hierarchy React to model changes

Slide 14

Slide 14 text

And more Behaviors - common view behavior Radio - global events Template engines Regions Underscore

Slide 15

Slide 15 text

Helpful Links gitter.im/marionettejs/backbone.marionette backbonejs.org underscorejs.org marionettejs.com/docs/current YouTube - Dancing with Marionette

Slide 16

Slide 16 text

Questions? https://www.mypebble.co.uk [email protected] @scott_walton github.com/scott-w www.scottwalton.codes