Episode 26 - JavaScript UI Widget Libraries
Subscribe on iTunes
Subscribe to RSS
Download MP3
Show notes
hosted by
Jared Brown
Brandon Corbin
joined by
Edward Rudd
JS Widget Libs for Desktop and then Mobile
Questions:
- What do people look for in each lib?
- How do you choose one over another?
- Desktop: Great for Intranet software, enterprise, engineering and scientific web apps
- Mobile: Progressive (mobile site) vs native-feeling app (typically wrapped in something like PhoneGap)?
- Actively developed or stale?
- JS Widget Libraries
- Large screen
- jQuery UI
- Grid coming to v2.1
- Movement to clean up the API
- Lots of dev momentum lately
- Kendo UI by Telerik
- Uses jQuery
- Recently out of beta
- Free for GPL Compatible open source projects
- $399 per developer
- (sounds like M$ style licensing.. inherited from the “.NET” background)
- Mention DataViz and Mobile
- Has custom theme builder for it’s widgets (not jquery UI’s builder)
- Doesn’t support IE6
- Native UI on each device
- wijmo
- Based on jQuery UI (in fact, some of the team works on jQuery UI)
- Uses jQuery UI themes native
- has a cdn for access.
- Free version includes 18 OpenSource widgets
- Commercial version
- Includes 40+ widgets
- $299+ (per developer) (or $499 w/ support)
- Ext JSby Sencha
- Mention Sencha Touch (free)
- $329 - one developer license (no support)
- Mobile
- jQuery Mobile - jQuery
- 70 kb
- (web GUI prototyping tool)
- Open source
- Broad device support
- Degrades Gracefully (progressive?) yes
- Has a theme builder (jQuery UI style)
- Kendo Mobile - Telerik
- No pricing yet (in beta)
- Ready for PhoneGap
- Sencha Touch - Sencha
- How is it diff from jQTouch?
- Much more programmatic to work with
- jQTouch is more web dev friendly
- Support for tables while jQTouch doesn’t
- http://9-bits.com/post/723711597/jqtouch-and-sencha-touch
- Free for non-OEMs
- Touch charts
- Looks like Android & iOS styling is a more manual thing to do
- jQTouch(problems with Android?) - Sencha
- Works with Zepto or jQuery
- Zepto is a minimal, jQuery syntax compatible lib
- SASS-based theming
- In beta
- Progressive
- Free
- ~20 kb
- Others to consider (both free, open source)
- Jo
- Not easy to see which UI widgets it offers
- Looks to have less popularity
- GWT Mobile
- From Google (but code is on GitHub)
- PhoneGap wrapper
- Great for pure client-side Java devs
- PhoneGap + XUI.js
- Open source
- Zirb
- Twitter Bootstrap
Notes:
Kendo UI
- Licensing. Kendo is dual-licensed under GPLv3/commercial license, jQuery UI is MIT/GPLv2.
- Support. Purchasing a Kendo commercial license entitles you to support (options here). Professional jQuery UI support is offered by appendTo and the filament group.
- Feature set. Kendo has some components that are missing in jQuery UI (Grid, Chart, TreeView, Upload, Templates, and soon - MVVM). You might need to stitch plug-ins by different authors if you want to use such functionality alongside jQuery UI.
- Roadmap. Kendo has a fixed release cycle (3 releases per year), with a fixed roadmap for the next release. The jQuery roadmap does not guarantee when the features will be included.
- Openness. You can browse the latest jQuery UI source at all times. With Kendo, you get only the source code for major releases when you don’t have a commercial license. If you purchase one, you get all the latest source code.
http://jqueryuivskendoui.com/
Sencha Touch
Aaron Weyenberg on Quora - “Sencha Touch takes much much longer to learn and become comfortable with, but it’s more robust. Sencha Touch documentation and examples, however, are quite unrefined in my opinion. There’s almost no MVC architecture support docs, so be prepared to do a lot of reverse engineering.
jQuery Mobile can get you up and running in a day, but it’s not as feature rich, and seems not quite as smooth in terms of transitions and effects.”
http://www.quora.com/Were-deciding-between-jQuery-Mobile-and-Sencha-Touch-What-are-the-pros-and-cons-for-each
James Pearce, Developer Relations @ Sencha Inc
Of course it very much depends on the use-case, your skill set and your desired architecture.
If you want an easy, declarative, markup-configured mobile site, then jQuery Mobile’s progressive enhancements is an obvious option.
If you want a richer, more standalone (say, MVC) app, built using a programmatic, RIA philosophy, then the Sencha Touch route would probably be better. It’s more likely that you’d take this approach if you were keen to wrap the app up in PhoneGap to deploy in an app store, for example.
jQTouch
Sencha touch is a little more complicated for those used to web design to use, in that it is almost a purely programmatic model (you don’t design pages in html, you programmatically add elements to a page). It does, however, have a much richer widget model and is a lot more fleshed out than jQTouch (it is also a lot bigger)…
http://stackoverflow.com/questions/3446186/sencha-touch-vs-jqtouch
Recommendations
DEPENDS ON THE USE CASE
Desktop
Mobile