A generator for Yeoman

Adaptive.js Generator

A generator for Yeoman that lets you quickly setup an Adaptive.js project.

Install generator-adaptivejs:

npm install -g generator-adaptivejs

Run yo adaptivejs:

yo adaptivejs

Follow the prompts and answer the required questions

Once completed, run grunt preview to start previewing

If you made a change to generator-adaptivejs and you want to test the local version of the Yeoman generator, run npm link and then yo adaptivejs.

Specifying the --slug option allows you to skip the prompt for entering the project's slug:

yo adaptivejs --slug [project-slug]

Specifying the --url option allows you to skip the prompt for entering your site's URL:

yo adaptivejs --url [site-url]

If you want to use some simple defaults, you can use the --defaults option:

yo adaptivejs --defaults

For Mobify's specific defaults, use the following:

yo adaptivejs --defaults mobify

To run tests within generator-adaptivejs itself:

npm test

To run unit and integration tests in the generated project:

grunt test

To run nightwatch WebDriver tests in the generated project:

grunt nightwatch

To run nightwatch tests locally on a real device (android or ios, requires Appium):

grunt android (or grunt ios)

To run nightwatch tests on an Android emulator or iOS simulator on Sauce Labs:

grunt sauce-android (or grunt sauce-ios)

The Adaptive generator allows you to install one of two selector libraries: jQuery or Zepto. We build custom versions of these selector libraries in order to add/remove specific features we require/don't require. Follow the directions below to build a custom version of your selector library of choice.

By default, we remove a number of jQuery modules to reduce the overall file size. Please see the jQuery README in github for more information.

$ git clone
$ cd jquery
$ npm install
$ grunt custom:-deprecated,-ajax/jsonp,-deferred

By default we build Zepto with the addition of the selector, stack, and data modules. Below are the steps required to build Zepto with our defaults. Please see the Zepto README in github for more information.

$ git clone
$ cd zepto
$ npm install
# build a custom zepto
$ MODULES="zepto event ajax form fx selector stack data" npm run-script dist

Once built, copy the zepto.js and zepto.min.js files into the vendor/zepto directory in the root of your Adaptive project.

When releasing a new version, follow these steps:

  1. Bump version in package.json
  2. Add to CHANGELOG
  3. Create a new git tag corresponding to that version and push to origin.
  4. npm publish