Skip to content
The official jQuery user interface library.
Pull request Compare This branch is 212 commits ahead, 750 commits behind master.
Latest commit c15481e @mikesherov mikesherov Merge branch 'master' into interactions
Failed to load latest commit information.
demos Merge branch 'master' into interactions
external Upgrade to JSHint 2.3.0 for browser version.
tests Merge branch 'master' into interactions
themes/base All: Updating copyright year to 2014
ui Merge branch 'master' into interactions
.csslintrc Use .csslintrc instead of inlining rules in the Gruntfile.
.editorconfig Exempt external directory from .editorconfig rules
.gitattributes Update .gitattributes to only touch files with text content.
.gitignore Build: Update grunt-compare-size to latest, add it's .sizecache.json …
.jscs.json Build: Update grunt and grunt-jscs-checker, use jquery preset for jscs
.jshintrc Updated .jshintrc settings.
.mailmap Updated author information.
.travis.yml Build: Add support for running on Travis
AUTHORS.txt Updated author information. Docs: Reduce contributing guidelines by linking to
Gruntfile.js Merge branch 'master' into interactions
MIT-LICENSE.txt All: Updating copyright year to 2014
jquery-1.10.2.js Updating jQuery to 1.10.2.

jQuery UI - Interactions and Widgets for the web

jQuery UI is a curated set of user interface interactions, effects, widgets, and themes built on top of jQuery. Whether you're building highly interactive web applications, or you just need to add a date picker to a form control, jQuery UI is the perfect choice.

If you want to use jQuery UI, go to to get started, for demos, for API documentation, or the Using jQuery UI Forum for discussions and questions.

If you want to report a bug/issue, please visit

If you are interested in helping develop jQuery UI, you are in the right place. To discuss development with team members and the community, visit the Developing jQuery UI Forum or #jqueryui-dev on

For contributors

If you want to help and provide a patch for a bugfix or new feature, please take a few minutes and look at our Getting Involved guide. In particular check out the Coding standards and Commit Message Style Guide.

In general, fork the project, create a branch for a specific change and send a pull request for that branch. Don't mix unrelated changes. You can use the commit message as the description for the pull request.

Running the Unit Tests

Run the unit tests with a local server that supports PHP. No database is required. Pre-configured php local servers are available for Windows and Mac. Here are some options:

Building jQuery UI

jQuery UI uses the Grunt build system.

To build jQuery UI, you must have node.js installed and then run the following commands:

# Install the Grunt CLI
npm install -g grunt-cli

# Clone the jQuery UI git repo
git clone git://
cd jquery-ui

# Install the node module dependencies
npm install

# Run the concat task to concatenate files
grunt concat

# There are many other tasks that can be run through Grunt.
# For a list of all tasks:
grunt --help

For committers

When looking at pull requests, first check for proper commit messages.

Do not merge pull requests directly through GitHub's interface. Most pull requests are a single commit; cherry-picking will avoid creating a merge commit. It's also common for contributors to make minor fixes in an additional one or two commits. These should be squashed before landing in master.

Make sure the author has a valid name and email address associated with the commit.

Fetch the remote first:

git fetch [their-fork.git] [their-branch]

Then cherry-pick the commit(s):

git cherry-pick [sha-of-commit]

If you need to edit the commit message:

git cherry-pick -e [sha-of-commit]

If you need to edit the changes:

git cherry-pick -n [sha-of-commit]
# make changes
git commit --author="[author-name-and-email]"

If it should go to the stable branch, cherry-pick it to stable:

git checkout 1-10-stable
git cherry-pick -x [sha-of-commit-from-master]

NOTE: Do not cherry-pick into 1-10-stable until you have pushed the commit from master upstream.

Something went wrong with that request. Please try again.