2.0.17 • Published 9 years ago

download.jqueryui.com-test v2.0.17

Weekly downloads
-
License
-
Repository
-
Last release
9 years ago

jQuery UI DownloadBuilder & ThemeRoller backend and frontend application.

Requirements

  • node >= 0.8.x.
  • ImageMagick 6.6.x. (see apendix below for instructions to compile it from source)
  • npm.
  • grunt-cli. (installed globally via npm)
  • api.jquery.com requirements.

Getting Started

Install node modules.

$ npm install

Prepare the releases (declared in config.json) and build the frontend js bundles.

$ grunt prepare

Run the server.

$ node server.js --console

Go to the URL it outputs.

Development

config.json

Use the config file to define which jQueryUI version DownloadBuilder should serve. Eg:

"jqueryUi": {
  "stable": {  // required
    "version": "1.10.0"
    "dependsOn": "jQuery 1.7+"
  },
  "legacy": {  // optional
    "version": "1.9.1"
    "dependsOn": "jQuery 1.6+"
  }
}

The stable release is required, but legacy is optional. Each release has the following attributes:

  • version is a String, can be a tag or a branch of jQuery UI. Note: use repo/branch eg. origin/master when defining a branch.
  • dependsOn is a String, any textual value allowed.
  • path optional can be used instead of version to straight point to the prepared release path.

node server.js

Use node server.js to run the server. Arguments:

  • --console output to console instead of syslog (via simple-log module);
  • --host <name> specify custom host. Default localhost;
  • --nocache skip caching release files and theme images;
  • --port <number> specify custom port. Default 8088;

Test

Use npm test to run the unit tests.

Deploy on WP

On jqueryui.com, run grunt deploy note, run that on jqueryui.com repo. More details on its README.

Local testing

Here's how to do integration testing with WordPress:

Symlink your local download.jqueryui.com module on jqueryui.com.

$ cd <local download.jqueryui.com path>
$ npm link
$ cd <local jqueryui.com path>
$ npm link download.jqueryui.com

Temporarily change its grunt.js to use localhost instead of http://download.jqueryui.com.

                var frontend = require( "download.jqueryui.com" ).frontend({
-                               host: "http://download.jqueryui.com"
+                               host: "http://localhost:8088",
                                env: "production"
                        }),

Appendix

Compile and install ImageMagick from source

Commands:

$ wget http://www.imagemagick.org/download/legacy/ImageMagick-6.6.9-10.tar.gz
$ tar -xzf ImageMagick-6.6.9-10.tar.gz
$ cd ImageMagick-6.6.9-10
$ ./configure CFLAGS=-O5 CXXFLAGS=-O5 --prefix=/opt --enable-static --with-png --disable-shared

Make sure you have the below in the output.

PNG               --with-png=yes		yes

If "png=yes no", libpng is missing and needs to be installed, apt-get install libpng-dev on linux or brew install libpng on OS X.

Continuing...

$ make -j5 && sudo make install
export MAGICK_HOME="/opt"
export PATH="$MAGICK_HOME/bin:$PATH"
export LD_LIBRARY_PATH="$MAGICK_HOME/lib/"
export DYLD_LIBRARY_PATH="$MAGICK_HOME/lib/"

Make sure you get the right bin when running it.

$ which convert
/opt/bin/convert

Hint: add those export statements into your .bash_profile.