<repo_name>spaceshipsamurai/samurai-home<file_sep>/scripts/app/home/HomeCtrl.js
angular.module('ssHome').controller('HomeCtrl', function($scope, ssYoutubeFeed) {

    ssYoutubeFeed.getRecent(3).then(function(videos) {
        $scope.videos = videos;
    });

    $scope.contacts = [
        {
            id: 1694010657,
            name: '<NAME>',
            title: 'Alliance Exec.'
        },
        {
            id: 92988604,
            name: '<NAME>',
            title: '2nd in command'
        },
        {
            id: 92940230,
            name: '<NAME>',
            title: 'Diplomacy Director'
        },
        {
            id: 92507729,
            name: '<NAME>',
            title: 'IT Director'
        }
    ];

    $scope.corporations = [
        {
            id: 98041262,
            name: 'Community against Justice'
        },
        {
            id: 851230678,
            name: 'The New Era'
        },
        {
            id: 555073675,
            name: 'The Green Cross'
        },
        {
            id: 692190945,
            name: '<NAME>'
        },
        {
            id: 98097817,
            name: 'Concordiat'
        },
        {
            id: 98189045,
            name: '<NAME>'
        }
    ];

});
<file_sep>/scripts/app/ssHome.js
angular.module('ssHome', ['ngRoute']);
angular.module('ssHome').config(['$locationProvider', '$routeProvider', function($locationProvider, $routeProvider) {
    $locationProvider.html5Mode(true);

    $routeProvider.when('/', {
        templateUrl: '/templates/index.html',
        controller: 'HomeCtrl'
    });

}]);
<file_sep>/scripts/app/home/ssYoutubeFeed.js
angular.module('ssHome').factory('ssYoutubeFeed', function($http, $q) {
    return {
        getRecent: function(count) {

            var dfd = $q.defer();
            var feed = 'http://gdata.youtube.com/feeds/api/videos?author=SpaceshipSamurai&v=2&alt=json&max-results='+ count +'&orderby=published';
            $http.get(feed).then(function(response){

                var videos = new Array();

                if(response.data) {
                    var entries = response.data.feed.entry;

                    entries.forEach(function(entry) {
                        videos.push({
                            id: entry['media$group']['yt$videoid']['$t'],
                            title: entry['title']['$t'],
                            desc: entry['media$group']['media$description']['$t'],
                            thumbnail: entry['media$group']['media$thumbnail'][0]['url'],
                            published: new Date(entry['published']['$t']).toLocaleDateString("en-US")
                        })
                    });
                }

                console.log(videos)
                dfd.resolve(videos);
            });


            return dfd.promise;
        }
    }
});