Angular: Random Order Filter

http://angularjs.org/

HTML

<ul ng-controller="MyCtrl">
    <li ng-repeat="i in rankedList | orderBy:'rank'">{{i.item}}</li>
</ul>

JavaScript

var myApp = angular.module('myApp',[]);

function MyCtrl($scope, $window) {
    $scope.list = ['a', 'b', 'c', 'd', 'e', 'f', 'g'];
    $scope.rankedList = [];
    angular.forEach($scope.list, function(item) {
        $scope.rankedList.push({
            item: item,
            rank: 0.5 - $window.Math.random()
        });
    });
}