I'm aware of several Javascript frameworks that assist in creating webapps for the iPhone and ipod Touch:
- Joe Hewitt's iui -- http://code.google.com/p/iui/
- Ciui -- A revised take on Joe's work by Vladimir Olexa of CNET -- http://code.google.com/p/ciui-dev/
- WebApp -- by Chrilith. http://webapp.net.free.fr/ Unfortunately, he doesn't publish his code until after a release.
I'm leaning towards Ciui but want your thoughts.
Which toolkit do you use for iPhone webapps?
Thanks,
Larry
ADDED following from the answers:
- Sproutcore
- JQuery Mobile -- still under development. From the JQuery team
- JQtouch -- superset of JQuery. Possible issue of library size
- Cappuccino -- comment by Ryan McCuaig: by 280 North. In philosophy, they're porting Cocoa and Objective-C to the Javascript environment (right down to Objective-C style syntax extensions to Javascript and reusing NIB files. Quite incredible).
- Wink
- xui
- Jo by Dave Balmer (blog). Designed to work with PhoneGap, it can be used to build web apps for iPhone, iPad, Android, plus native apps (via PhoneGap) for iPhone, Android, webOS, and Symbian. See the demo video. Set res to 720p to read the screen.
- Zepto.js by Thomas Fuchs of scriptaculous fame
- ChocolateChip-UI
JQtouch vs JQuery Added Dec 12, 2010. Here is a comment on a public board about JQtouch vs JQuery mobile from Dave Oliver: JQuery Mobile is another evolutionary step past JQTouch. JQTouch is stable now (and features are included in the Sencha Touch framework), while JQuery Mobile is only in Alpha state at this point.
Having "learned the lessons" of JQTouch, JQuery Mobile adopts some new philosophy that may or may not be to your liking. Among other things, it defines a "cross platform look and feel" (though it will later add a version of JQuery's automated theme generator). JQTouch, by comparison, is neutral (though you have to do some work to make your look and feel look the way you want it).
The primary negative you sometimes hear about JQTouch is the lack of a fixed position footer and sub-pane scrolling (reason: iPhone native apps have these features). It turns out other smart people have solved that problem in ways that work inside JQTouch (see, e.g., iScroll).
I think the JQuery team is working on a very compelling offering, and I think it will see a lot of interest and additional community scrutiny which is good. But, having experimented with it for a real application, it is - at this point - a bit too new to consider for production use. "Watch This Space", as they say.