We've spent a lot of time talking to customers about Kendo UI, our framework for building rich web applications with modern web standards like HTML5, CSS3, and jQuery. Since its launch in November 2011, we've answered many questions on the Kendo UI Forums, Stack Overflow, Twitter and elsewhere.
One of the most frequently asked questions involves comparing Kendo UI with jQuery UI and jQuery Mobile. On this site, we've documented the similarities and differences between these frameworks in the hope of providing an answer to this question in a more detailed manner than what you may have read, seen, or heard elsewhere.
I work for Telerik as a Developer Evangelist. My role is to help developers be awesome with Kendo UI and our other products. That stated, our views of the world may differ on the matter of jQuery UI vs Kendo UI. It is my goal to present a detailed and accurate comparison of these frameworks so that you can make an informed decision if you are in midst of an evaluation. By the way, if you see something that I've stuffed up, please let me know!
John Bristowe (@JohnBristowe)
I work for Telerik as a Developer Advocate and am also a member of the jQuery UI team. Therefore I have the unique position of having a double bias when comparing these frameworks. My goal is to provide an accurate comparison to aid developers.
TJ VanToll (@tjvantoll)
I am the original Developer Advocate for Kendo UI. Now that Kendo UI has released the open source Core version, it is with great pride that I update this site.
Burke Holland (@burkeholland)
jQuery UI is part of the jQuery Project and is described as:
Demos & Documentation »
- Kendo UI Web
- Contains the core functionality of Kendo UI framework, including the DataSource component, templates, drag-and-drop, and themeable widgets with integrated animations.
- Kendo UI DataViz
- A collection of HTML5-powered, mobile-ready, data visualization widgets.
- Kendo UI Mobile
- Native UI widgets for building HTML5-powered apps and sites for modern mobile devices.
Demos & Documentation »
License: Apache 2 or commercial
Why Kendo UI?
Kendo UI is an end-to-end solution for modern client-side development. It's everything you need for building applications for modern web standards, saving developers time and minimizing frustration by providing an integrated - yet highly modular - framework.
Kendo UI framework is developed by Telerik – a leading provider of development and testing tools for web, desktop and mobile applications. We are trusted by over 100,000 customers worldwide for our innovation and industry-best technical support. It is our commitment to provide first class support and a rapid, regular release cycle.
When building Kendo UI, we wanted to ensure that the out-of-the-box features were highly-tuned to the tasks at hand and capable of maximum performance. We also wanted to minimize external dependencies so Kendo UI could evolve quickly. To do that, Kendo UI provides many of its own implementations for core framework features.
You can use jQuery UI with Kendo UI without conflict. However, Kendo UI is not based on jQuery UI. Kendo UI has been built from the ground-up to deliver a rich, HTML5-based application framework that is tuned for performance and positioned to rapidly evolve over time.
Many more widgets, features, and overall improvements are scheduled for Kendo UI Web, Kendo UI DataViz, and Kendo UI Mobile. For more information about what's coming, please take some time to review our roadmap!
The following table is based on data from jqueryui.com and telerik.com/kendo-ui:
|Category||jQuery UI||Kendo UI|
|Widgets (Total)||Yes (12)||Yes (28)|
|Themes (Total)||Yes (24)||Yes (11)|
|Effects (Total)||Yes (13)||Yes (8)|
|Interactions (Total)||Yes (5)||Yes (6)|
|DataSource||No (see Dataview)||Yes|
|Globalization||Yes (via Globalize)||Yes|
|Browser Support||IE 8+, Latest 2 versions of Chrome, Firefox, Safari, and Opera||IE 7+, Firefox ESR, Safari 5+ (OS X), Opera 11+, Chrome, Android 2.2+, iOS 4.0+|
|Mobile Device Compatibility||No (see jQuery UI Touch Punch)||Yes|
jQuery UI and Kendo UI both provide widgets for constructing the front-end interface of your web applications. These widgets are designed to support progressive enhancement, allowing users in older browsers to access existing content and functionality of native HTML types if certain capabilities aren't accessible by the framework.
jQuery UI Widgets (12)
Kendo UI Widgets (28)
There are a few additional things worth mentioning here:
- Kendo UI's widgets can be declaratively initialized using HTML5 data attributes.
- The Autocomplete widget in jQuery UI combines the functionality of the AutoComplete and ComboBox widgets in Kendo UI Web.
- The Datepicker widget in jQuery UI combines the functionality of the Calendar and DatePicker widgets in Kendo UI Web.
- There are many additional widgets available from the developer community that can be used with either library.
- Future widgets for jQuery UI are noted on its roadmap.
- Finally, Kendo UI is regularly adding new widgets and improvements to existing ones. Check out the Kendo UI Web roadmap, the Kendo UI DataViz roadmap, and the Kendo UI Mobile roadmap for more information.
Widgets in both jQuery UI and Kendo UI support themes and styling via CSS. Both frameworks also provide a number of themes out-of-the-box along with a means of creating custom themes.
jQuery UI Themes (24)
Kendo UI Themes (11)
- Blue Opal
- High Constrast
- Metro Black
Both jQuery UI and Kendo UI support the ability to customize themes. This can be done either manually or through a visual tool that's provided by both frameworks; the jQuery UI ThemeRoller and the Kendo UI ThemeBuilder.
Both the jQuery UI ThemeRoller and the Kendo UI ThemeBuilder serve the same purpose; to allow the quick creation of custom themes for widgets.
One major difference between the frameworks is in the CSS implementations. Kendo UI utilizes LESS; its ThemeBuilder can auto-generate LESS or CSS representations any custom theme. jQuery UI does not use a CSS preprocessor; it's ThemeRoller generates CSS for custom themes.
jQuery UI supports a rich framework for integrated effects and animations that can be applied to any DOM element. These effects include the ability to animate colours and conduct easing functions. Kendo UI has fewer integrated effects and easing functions than jQuery UI. These are also only present to support the visual transitions that occurs on its widgets.
jQuery UI Effects (13)
Kendo UI Effects (8)
- Slide In
- Page Turn
jQuery UI includes a number of interactions to that you can use to apply to DOM elements. Kendo UI defines interactions that are used as part of its widgets.
jQuery UI Interactions (5)
Kendo UI Interactions (6)
- DataSource based widgets such as Grid and ListView
The interactions provided by both jQuery UI and Kendo UI are highly customizable.
jQuery UI's interactions do not support touch events and are in the process of being rewritten.
jQuery UI does not support templating.
Kendo UI supports a simple, yet high performance templating engine.
In August 2011, Todd Anglin (@ToddAnglin) did a great job providing an overview the templating engine of Kendo UI in his blog post, Kendo UI Templates: Faster than a Speeding Resig:
Kendo UI Template Demo
A significant difference between jQuery UI and Kendo UI is support for a DataSource component.
A DataSource-like component called Dataview has been discussed for jQuery UI, but is currently on hold. You can read more about its progress on the wiki page for Dataview.
The DataSource component is a powerful abstraction of data in Kendo UI and is fundamental to the way in which databinding is conducted with widgets. While the concept of databinding of local and remote data source is supported in jQuery UI, no such abstraction exists.
From the demo page for the DataSource component:
The DataSource component is powerful abstraction of Kendo UI and provides developers with the ability to perform local and remote databinding quickly.
Kendo UI DataSource Demo
jQuery UI does not provide a framework for data visualizations.
Kendo UI provides a library of data visualizations through Kendo UI DataViz, an API that provides Pie, Line, Bar, Column, and Scatter charts to your applications and websites.
Kendo UI DataViz automatically uses SVG or VML to render rich data visualizations, depending on the capabilities of the browser. This makes it possible to render Kendo UI DataViz charts in [many] environments, from older browsers, like IE7, to mobile browsers on platforms like iOS and Android (Opera and the Android browser v3 and up).
Kendo UI DataViz is underpinned by the effects and interactions framework of Kendo UI to provide visual animations when rendering to the browser.
Kendo UI DataViz Demos
Both jQuery UI and Kendo UI provide excellent support for globalization. Both frameworks have localized widgets for dates, currency, and time. With the exception of datepicker, jQuery UI's globalization options are dependent on the Globalize library; Kendo UI's globalization is included in the framework.
jQuery UI Date Demo jQuery UI Currency Demo jQuery UI Time Demo
Kendo UI Globalization Demo
jQuery UI does not provide a framework for validation.
Kendo UI includes validation out-of-the-box via the Validator component, which offers a mechanism of performing client-side form validation. Built around the HTML5 form validation attributes, it supports variety of built-in validation rules, but also provides a convenient way for setting custom rules handling.
Kendo UI Validator Demo
Both jQuery UI and Kendo UI feature excellent support for modern and older browsers.
jQuery UI Browser Compatibility
- Internet Explorer 8+
- Firefox (lastest 2 versions)
- Chrome (lastest 2 versions)
- Safari (lastest 2 versions)
- Opera (lastest 2 versions)
Kendo UI Browser Compatibility
- Internet Explorer 7+
- Firefox ESR
- Safari 5+ (OS X)
- Opera 11+
- Google Chrome
- Android 2.2+
- iOS 4.0+
- BlackBerry OS 7.0+
The big difference on this list is jQuery UI does not support mobile browsers and Kendo UI does. While most things in jQuery UI work fine on mobile browsers, the interactions do not. jQuery UI's interactions are being rewritten to support touch and pointer events, but until then using jQuery UI Touch Punch is recommended.
Kendo UI offers support for touch and mobile devices out-of-the-box. All widgets in Kendo UI provide full support for touchscreen devices, such as the iPad. The support for touch input is also extended to its support for drag-and-drop interactions with any DOM element.
jQuery UI removed support for IE6 in 1.10 and the Kendo UI team dropped support for IE6 after Beta 2. As of 1.11, jQuery UI no longer accepts bug reports for IE7. The workarounds for IE7 are still present in jQuery UI's code, but they will be removed in 1.12.
Web Standards Support
jQuery UI and Kendo UI leverage and utilize modern web standards when supported by the browser. Note: This also includes incorporating aspects of HTML5 and CSS3. The following isn't exhaustive; rather, it provides a set of examples where both jQuery UI and Kendo UI either incorporate or leverage modern web standards.
jQuery UI Web Standards Support
- CSS3 supported by ThemeRoller for styling of corner rounding via border-radius.
Kendo UI Web Standards Support
- Kendo UI takes advantage of CSS3 for 2D transforms and transitions (if supported by the browser).
- Kendo UI widgets will leverage HTML5 data attributes for configuration and other options when present.
- The Upload widget of Kendo UI Web can upload files out-of-band using the HTML5 File API with fallback for legacy browsers.
- Widgets like the DatePicker and TimePicker integrate seamlessly with date/time HTML5 input types.
- Kendo UI DataViz will emit its charts as SVG if supported; otherwise, it will emit VML as a fallback.
Accessibility is an important consideration for both jQuery UI and Kendo UI. Both frameworks provide keyboard accessible widgets, support ARIA attributes, and optimize user experiences on assistive devices such as screen readers.
Both jQuery UI and Kendo UI feature support through a number of different means. Many web developers can find support online in forums and sites like Stack Overflow.
Support for jQuery UI is described on its website as follows:
The jQuery UI community is very active and provides a friendly, helpful environment when you need development advice or have ideas on how to improve a script. The jQuery UI Team encourages everyone to actively participate in the development of the library.
Commercial support for jQuery UI is available through third-party sponsors of the jQuery and jQuery UI projects.
For the commercial version of Kendo UI, Telerik offers a 48-hour guaranteed response time for tickets submitted to its support system. Additionally, Telerik is committed to providing all service packs and weekly builds for commercial customers.
jQuery Mobile and Kendo UI Mobile are jQuery based frameworks to create mobile web sites and applications.
jQuery Mobile is described as:
A unified, HTML5-based user interface system for all popular mobile device platforms, built on the rock-solid jQuery and jQuery UI foundation. Its lightweight code is built with progressive enhancement, and has a flexible, easily themeable design.
Kendo UI Mobile
License: Apache 2
Both jQuery Mobile and Kendo UI Mobile provide a suite of widgets that can be used to create highly interactive user interfaces that target mobile devices.
jQuery Mobile Widgets (23)
- Collapsible Set
- Page Loading
- Column-Toggle Table
- Reflow Table Widget
Kendo Mobile Widgets (14)
Here's a visual sampling of the widgets that each framework provides.
jQuery Mobile Widget Demos Kendo UI Mobile Widget Demos
A couple of additional notes.
- jQuery Mobile's widgets are built with the widget factory, therefore they use the same syntax as jQuery UI's widgets.
- The widgets shown above are using Kendo UI Mobile's flat skin.
- jQuery Mobile and Kendo UI Mobile both support creating widgets declaratively (using only markup), as well as explicitly in JS.
jQuery Mobile and Kendo UI mobile use different mechanisms to let you customize the look of your web sites or applications.
jQuery Mobile has a concept of swatches that you can create to style individual widgets and elements. A theme can have up to 26 swatches and they are customizable using jQuery Mobile's ThemeRoller.
jQuery Mobile's ThemeRoller jQuery Mobile's theming docs
Kendo UI Mobile
Kendo UI Mobile features themes that replicate native mobile device OS experiences. These themes can be configured using Kendo UI Mobile's ThemeBuilder. The 2013 Q2 release of Kendo UI Mobile included a new flat theme in line with iOS 7.
Kendo UI Mobile's ThemeBuilder
Both jQuery Mobile and Kendo UI Mobile feature a series of CSS based transitions to transfer users between views or pages.Compare Transitions in a Demo
jQuery Mobile's Transition Demos Kendo UI Mobile's Transition Demos
Both jQuery Mobile and Kendo UI Mobile support all major phone operating systems and browsers.
Because of jQuery Mobile's progressive enhancement approach, the framework supports essentially all browsers in some capacity. The level of support is divided into three tiers - A grade (full support), B grade (full support, no AJAX navigation), and C grade (basic HTML). The full support list is too extensive to list here, but A grade support includes iOS 4+, Android 2.2+, IE8+, etc.
jQuery Mobile Graded Browser Support
Kendo UI Mobile supports:
- iOS 4.0+
- Android 2.2+
- Windows Phone 8+
- Blackberry 7.0+
- January 30, 2012: Replaced social buttons with Twitter and G+; updated DataSource section to include (upcoming) Dataview component for jQuery UI; updated Mobile Device Compatibility section to include information about touch interaction updates pending for jQuery UI.
- March 23, 2012: Updated vLatest versions and dates; removed references to Kendo UI Mobile Beta since it's now released; updated Quick Comparison chart.
- September 12th, 2013: Updated layout; updated information for new versions of libraries; added jQuery Mobile vs. Kendo UI Mobile section.
- April 17th, 2014: Update information for Kendo UI Core and Q1 2014 release.
- June 30th, 2014: Updates for the jQuery UI 1.11 release.
jqueryuivskendoui.com is a GitHub pages site backed by a public repository. If you notice anything incorrect - or something we could improve - please create an issue and let us know about it.