Pace.js load progress bar for Ember apps, incl. initial scripts lazy loading
Installation
Using latest Ember-cli, run the command:
ember install:addon ember-cli-pace
or for older versions:
npm install ember-cli-pace && ember g pace
Flash-like initial script loading
Due to application scripts loading may take some time (especially, using mobile networks or ADSL), Ember-cli-pace can load them asynchronously displaying correctly computed progress bar. To enable that feature, just change src
attribute to pace-src
in your app.html
.
<script pace-src="assets/vendor.js"></script>
<script pace-src="assets/app.js"></script>
Therefore, the scripts will be loaded via AJAX, which allows to compute loaded vs total bytes ratio. If your scripts are located on separate host, please note CORS policy.
Configuration
All options, excluding addon-related color
and theme
, are documented on http://github.hubspot.com/pace/.
var ENV = {
pace: {
color: 'blue',
theme: 'material',
catchupTime: 50,
initialRate: .01,
minTime: 100,
ghostTime: 50,
maxProgressPerFrame: 20,
easeFactor: 1.25,
startOnPageLoad: true,
restartOnPushState: true,
restartOnRequestAfter: 500,
target: 'body',
elements: {
checkInterval: 100,
selectors: ['body', '.ember-view']
},
eventLag: {
minSamples: 10,
sampleCount: 3,
lagThreshold: 3
},
ajax: {
trackMethods: ['GET', 'POST', 'DELETE', 'OPTIONS'],
trackWebSockets: true,
ignoreURLs: []
}
}
};
Themes
This addon is bundled with Material spinner theme, which is set by default. See it on demo page.
Pace.js originally provides 14 progress bar themes in 10 colors. See the progress bars and spinners in action: http://github.hubspot.com/pace/docs/welcome/
Pace API
More details on Pace events, methods and configuration could be found on http://github.hubspot.com/pace/
Developing ember-cli-pace
For more information on using ember-cli, visit http://www.ember-cli.com/.