Pre.js – Demo

Promises/A based asset preloader.

HTML

<script src="https://gist.github.com/raw/1889742/aa7fb2cce9184440872eec167d10c175be0b4147/Pre.js"></script>

JavaScript

var game = new Pre;

// Bind some events
game
    .on('fetch', function (resource, asset) {
        console.log('Trying to load: ' + resource);
    })
    .on('loaded', function (index, total, resource, asset) {
        console.log('Loaded an asset at: ' + resource, asset, 'Completed ' + index + ' of ' + total);
    })
    .on('done', function (assets) {
        console.log('Loaded everything!');
    })
    .fetch('http://brainfit.heroku.com/assets/n-back/octocat.png')
    .fetch('http://brainfit.heroku.com/assets/n-back/alex/z.wav');

console.log(game.all());