A framework for creating adaptive websites.


Framework for creating adaptive templated websites using Javascript

Full Documentation:

Getting started with Adaptive.js development involves a few steps:

  1. Clone this repository
  2. Install dependencies
  3. Generate test project
  4. Link local adaptive.js repository to project
  5. Test your changes

To begin, clone this repository. cd into your chosen folder, and run the following:

npm install
bower install

This will prepare your local adaptive.js environment for development.

The following dependencies will need to be installed to preview your changes:

These dependencies and their installation are described in greater detail in our Getting Started guide.

Once you have installed the previous dependencies, download the Adaptive.js Generator using the following command:

npm install -g generator-adaptivejs

After installation of the generator has finished, create a new directory for your test project using the generator. Run the following to generate a new project:

yo adaptivejs

Answer the questions asked by the Yeoman generator to complete the process.

To link your local Adaptive.js repository for use as a Node module within the test project, run the following:

cd <your_adaptivejs_repo>
npm link
cd <your_test_project>
npm link adaptivejs

Now any changes you make to your repository will be reflected in your test project.

  1. cd into your test project directory
  2. Run grunt preview
  3. Using a browser, navigate to
  4. In the 'Site URL' field, enter the website you want to adapt. NOTE: The site must have a Mobify tag installed.
  5. In the 'Bundle Location' field, enter http://localhost:8080/adaptive.js
  6. Press the 'Preview' button and you should see your test project adaptation

To run tests in the terminal, run the following:

grunt test

To run your tests in the browser, run the following:

grunt test_browser

and browse to: http://localhost:8888/tests/

When releasing a new version, follow these steps:

  1. Make sure all tests pass locally using grunt test.
  2. Make sure all tests pass on Saucelabs with grunt test_saucelabs.
  3. Bump version in package.json
  4. Add to CHANGELOG
  5. Create a new git tag corresponding to that version and push to origin.
  6. npm publish
  7. Update