Skip to content
JavaScript UI library for data-driven web applications
Branch: master
Clone or download
Type Name Latest commit message Commit time
Failed to load latest commit information.
demos fixed issue 1306 Oct 25, 2017
dist Recompiled JS and CSS Mar 28, 2019
docs grid_stateSave Dec 11, 2017
libs updated font-awesome to 4.7.0, adapted css paths Feb 3, 2017
qa Fixed formatTime Jan 24, 2018
server Fixed db2 example, recid should be LOWER Dec 19, 2017
site Fix typos and grammar Feb 1, 2018
src Stylying for cancel button in w2prompt Mar 31, 2019
test Stylying for cancel button in w2prompt Mar 31, 2019
ideas.txt Small fixes Jul 18, 2014
index.html Minor fixes Oct 20, 2016
license.txt Readme updates about Grunt Mar 6, 2014
package.json Export main JS and CSS files in package.json for easier usage with 'r… Mar 7, 2018 improve wording Oct 17, 2017
w2ui.jquery.json Updated version to 1.5 (nightly) Jul 24, 2014

W2UI 1.5 - MIT License

w2ui is a modern and intuitive JavaScript UI library for building rich data-driven web applications. The library has a small footprint and requires only jQuery (1.9+) as a dependency.

The library implements the following highly usable widgets:

The complete library is only 69Kb (minified & gzipped)

Who is Using It

List of projects that use w2ui!

If you're using w2ui, I'd love to hear about it, please email to the name of your project and a link to a public website or demo, and I will add it to the list.

Quick Start

Current stable version is 1.4. Current development version is 1.5.rc1.

You can:

bower install w2ui
  • or install using npm:
npm install w2ui

To start using the library you need to include into your page:

  • w2ui-1.4.js (or w2ui-1.4.min.js)
  • w2ui-1.4.css (or w2ui-1.4.min.css)

All the widgets and their css classes are defined inside of these two files. There is no image dependencies, some images are embedded into CSS file.

There is no requirement for a server side language. Node, Java, PHP, ASP, Perl or .NET all will work, as long as you can return JSON format from the server (or write a converter into JSON format on the client). Some server side example implementations can be found here.

Getting Started Guide

Documentation & Demos

You can find documentation and demos here:

Bug Tracking

Have a bug or a feature request? Please open an issue here Please make sure that the same issue was not previously submitted by someone else.


I have switched to Grunt as a build tool. You will find Gruntfile.js in the root. You still can build with ANT if you are more comfortable with it. Both processes will produces same w2ui.js and w2ui.css files. Grunt has a few more tasks, such as watch, to auto compiles less and js files as you develop. Both tools will do the following:

  • Compile LESS files
  • Concatenate and minify CSS files
  • Concatenate, uglify and minify JS files

To use ANT, you will need to install NodeJS and NPM, then run the following command to install dependencies

sudo npm install less -g
sudo npm install clean-css -g
sudo npm install uglify-js@1 -g

To use Grunt, you will still need to install NodeJS and NPM, then run npm install that will install all dependencies as they are described in package.json file.

npm install

File Structure

- dist           - compiled JS and CSS files
- src            - source JS files
  - kickstart    - copy of another project used with the demos (not part of w2ui itself)
  - less         - LESS files (source for css)
- demos          - all demos, same as on the website
- libs           - auxiliary libraries (jquery, codemirror, etc.) used in the demos (not part of w2ui itself)
- server         - example implementations for a server implementation communicating with w2ui instances
- test           - feature testing files
- qa             - some qunit test


Your contributions are welcome. However, few things you need to know before contribution:

  1. Please check out latest code before changing anything. It is harder to merge if your changes will not merge clean.
  2. If you are changing JS files - do all changes in /src folder
  3. If you are changing CSS files - do all changes in LESS in /src/less/src
  4. If you want to help with unit test - do all changes in /qa
  5. If you want to change documentation - do all changes in /docs
  6. If you want to add demos - do all changes in /demos
You can’t perform that action at this time.