• Share
  • Email
  • Embed
  • Like
  • Save
  • Private Content
Building Vine.co
 

Building Vine.co

on

  • 803 views

Experiences & lessons learned from building Vine.co using Ember.js

Experiences & lessons learned from building Vine.co using Ember.js

Statistics

Views

Total Views
803
Views on SlideShare
796
Embed Views
7

Actions

Likes
1
Downloads
3
Comments
0

2 Embeds 7

https://twitter.com 6
http://www.slideee.com 1

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

    Building Vine.co Building Vine.co Presentation Transcript

    • building .co Janessa Det (@jandet) Friday, February 28, 14
    • 10/21 first day at Vine: “We want to ship a web experience by the end of the year.” Janessa Det | @jandet Friday, February 28, 14
    • Why Ember? ✦ Single-page app ✦ Classic multi-page app ✦ API-backed ✦ Evolved form of Backbone.js Janessa Det | @jandet Friday, February 28, 14
    • Router resources Router this.resource('user', { path: '/user/:username' }, function() { this.route('tv'); }); UserRoute model: function(params) { return userService.profile(params); } UserIndexRoute | UserTvRoute model: function() { var user = this.modelFor('user'); return timelineService.user({id: user.userId}); } Friday, February 28, 14 Janessa Det | @jandet
    • Current User CurrentUserController sessionChanged: (function() { if (this.get('session.isAuthenticated')) { this.userService.currentUser().then(function(user) { this.set('content', user); }.bind(this)).catch(function(err) { // handle session expiry, etc. }); } }).observes('session.userId').on('init') Janessa Det | @jandet Friday, February 28, 14
    • Repeated Elements TimelineIndexController TimelineIndexController = Ember.ArrayController.extend({ itemController: 'post' }); ★ All feed timelines ★ TV mode timelines ★ Homepage background vines ★ Widgets with pared down post representations Janessa Det | @jandet Friday, February 28, 14
    • How does Vine play videos? Post View Post View Post View playing Vine Controller action: play <video> </video> Post View Janessa Det | @jandet Friday, February 28, 14
    • Things I wish I knew about earlier/better Ember run loop lifecycle hooks register & inject testing best practices Janessa Det | @jandet Friday, February 28, 14
    • Thanks @jandet vine.co/jandet Friday, February 28, 14