Hacker News new | comments | show | ask | jobs | submit login
JQuery Mobile Framework Announced (jquerymobile.com)
312 points by crescendo 2451 days ago | hide | past | web | 55 comments | favorite

To preempt a few questions that are bound to pop up:

What about jQTouch? While jQTouch is a great framework and we're proud to have it as part of the jQuery community - we really wanted a mobile framework to exist that would truly support all the mobile platforms out there. We chatted with the jQTouch team and there wasn't really any interest on their end to head in that direction. It's obviously going to be a ton of work - but that's something that the jQuery project is very interested in tackling.

Is this a response to Sencha Touch? We've actually been working on jQuery mobile for a while now - long before Sencha Touch was released/announced. We're not particularly concerned with Sencha Touch mostly for the same reason that we're building an alternative to jQTouch: We want to support more platforms and do it in a completely seamless way.

What data did you use to choose the browsers that you did? We've been talking with a number of mobile analytics firms and large corporations, gathering data, and will be releasing a bunch of the reliable numbers that we've collected on the jQuery mobile blog. Right now we're confident in the browsers and versions that we've chosen - although that'll likely change over the next couple months as the market shifts.

Hi John. I work at Sencha. We haven't spoken yet, but I think I have to respond to the "disservice" comment because frankly it seems a little uncharitable (and uncharacteristic of your usual even-handed demeanor) given that Sencha is promoting jQuery use by funding Jonathan Stark's work on jQTouch including work to port jQTouch to Android.

We intend to continue to fund jQTouch work because we want to support all those developers (thousands at least) that have chosen jQTouch (and jQuery) as their platform. We will continue to support jQTouch ports to more phones and more browsers as additional browsers and platforms emerge (like the Blackberry Torch) that can support a minimal rich application experience.

As you've noted in the past, Sencha Touch takes a different approach than what you're planning to do with jQuery Mobile. It's ok to differ, but we wouldn't characterize it as a "disservice". Our belief (right or wrong) is that few people will use applications (and I emphasize that word) unless they can produce experiences that can compete with native. We've had ten years of mobile web sites with static, unresponsive, high latency user experiences that haven't interested or excited people. We want to move on from that.

Today, iOS, Android and the Blackberry Torch can support web apps that compete with native experiences (woohoo!), but by the end of the year, we'll see phones from Nokia (and more from RIM and maybe even some from Microsoft) with good HTML5/CSS3 support and fast processors and GPU's that allow everyone to have rich app experiences regardless of their choice of carrier or their geography. With the rise of $30 HTML5 Android phones from China, we see this as inexorable.

Our two projects are making different assumptions about what will most interest (and excite) end-users. I hope we can maintain an engaged (and polite) discussion as we walk these paths. Feel free to email me, would love to chat more to provide more context around our decisions. We'll also put together a blog post soon on why we're doing what we are.

Look forward to hearing from you.

-- michael

While I laud your transparency, I lament the chilling effect this will have on existing libraries like JQTouch. jQuery Mobile isn't available today but this announcement will make a lot of people sit on their hands waiting to see how things play out in the hope that they won't invest in a dead-end platform.

Oh well, not saying you shouldn't have chosen this path, just pointing out the consequences...

jQTouch has been out for a couple years at this point - a two month "chill" period before release seems totally appropriate.

Honestly, I don't see the "chill" as being a bad thing in this regard: jQTouch and Sencha Touch are doing mobile web development a great disservice by only supporting the latest-and-greatest WebKit platforms. If we can get developers to actually think about supporting more of the mobile platforms that are actually used then I will consider the project to be a victory.

I discuss this much more in our strategy outline: http://jquerymobile.com/strategy/

"jQTouch and Sencha Touch are doing mobile web development a great disservice by only supporting the latest-and-greatest WebKit platforms."

How is focusing on the future doing a disservice to anyone? We're at the very beginning of the mobile-optimized web, and the future is still unclear. There's still room to define it. Supporting the equivalent of IE6 on mobile devices seems like a waste of time to me, especially after we've just spent a decade watching the evolution of the desktop web be stunted by obsessive focus on backwards/cross compatibility.

Also, nearly all major device manufacturers have committed to using WebKit. In five years, how many mobile devices will not run WebKit? If Windows Phone 7 isn't dead by then, it might be the only one.

I don't really relish a future where one browser engine dominates the way IE has in the past. I fully expect and hope for more viable mobile engines.

Even still, jQtouch (at least, I haven't messed with the Sencha thing) is very iDevice slanted. There's "webkit" and then there's "webkit on iOS", and most tools are targeted specifically at "webkit on iOS".

The thing the differentiates WebKit from IE in a good way is that it's completely open source and it's used and built by several competing companies working together toward a common goal.

It's also behind both IE and Firefox in various ways. You're right that it would be a better dominant engine than IE was, but it's still not as good as having a nice three way competition for browser share.

How is focusing on the future doing a disservice to anyone?

Well, you're clearly not serving the present.

Competition is a good thing. Choice is cool.

Well it's your call to make and I'm not going to second-guess you on it. Good luck with the project, as you probably know I'm a jQuery fan and I'm looking forward to seeing what you come up with.

Naturally, I expect to see into, tap, ergo and when in the jQuery core as well...



With all due respecy John, I think we all should focus only on the latest-and-greatest WebKit platforms or on platforms that are comparably good. Mobile development is exciting precisely because it's a road to the future.

Look at the place we are in desktop web development because we have to support old browser. We are stuck 7+ years in the past.

I understand the intellectual allure of writing a framework that supports a gazillion different devices and I appreciate what you've done with jQuery for web development but frankly, I don't care about jQueryMobile.

Except that it scares the hell out of me the day some client starts asking me to support 5 year old Nokias.

Jquery mobile is great because they will try to support as many platforms as possible. If you run a real mobile site with a lot of users you have to take small platforms into consideration, just like your website needs to support IE 6 if you have lots of users. It's not fun but it would be bad business not to do it.[1]

If a mobile framework can reach this goal it will make mobile development a heck of a lot easier, and I applaud that.

[1] You need some scale before development for platforms that maybe constitute 3% of your users will be a financially good option.

Youtube and other google apps don't support IE6, not to mention many other big traffic web apps and web sites (including 37signals apps).

IE6 has around 7% marketshare according to this: http://www.w3schools.com/browsers/browsers_stats.asp

Not supporting it is like telling one in fourteen of your customers you don't want their business. This seems like a bad idea, unless of course you have non-financial motives, such as wanting to kill off IE6 by not supporting it and driving it into oblivion.

Those are general stats, you need to look at your personal stats which might be at 0.5% or 65% and decide from there, not based on these kind of sites. Making your site work on IE will require tons of hour of work and therefor money. It'll also just not work for HTML5 apps, unless you have a second version of your site coded in flash. Make sure it's worth it.

You can't get meaningful stats unless you start out supporting IE.

Since the first commit of jQTouch on GitHub in June, there doesn't seem to be much going on and every commit has come from one person. So I don't think you have to worry too much about that.

I wanted to like it but there just didn't seem to be much going on over there. Now that it's part of "Sencha Labs", it seems the focus is now over on Sencha Touch.

While, Sencha Touch is definitely interesting, they still don't appear to have announced pricing. Based on how they license and price their other products, I don't think I'm going to like it.

This announcement is awesome and makes me giddy. There really aren't any good options out there for mobile websites. You basically have to roll your own so this is great news.

jQTouch has a great looking website/demo and was very exciting a year or so ago, but I'll be happy to see a robust alternative. After having used jQTouch to implement iPhone-specific views for a couple sites, I won't use it again.

jQTouch could have preempted the possibility of jQuery Mobile being viable in the first place, but it stagnated instead. The jQuery team can't be blamed for that.

I'm guessing that jQTouch maybe never had any ambition to address the need that jQuery Mobile is hoping to address. It was clever, and it was first. Credit where due. But it was always a toy. Modern mobile JavaScript frameworks can't ignore the need for a true touch event model. Thank god John and his team are writing one, because (1) we pretty much know it will be good and (2) I sure as he'll wasn't going to write one.

Besides what jresig has already said, it's okay for there to be many answers to the same question. It's just like having two open source rendering engines, at least, Mozilla, and Webkit, that don't cannibalize one another. I don't think two approaches to mobile using jQuery will cannibalize one another.

I did not say that there shouldn't be multiple answers to the question, however if you're starting a new project today, you don't have a choice between A and B, you have a choice between something here today and something else promised Real Soon Now. Naturally, the one promised Real Soon Now is extremely shiny, it supports every browser, and it hasn't made any compromises to do so.

This kind of situation forces people to sit on their hands, which means that development stalls for a while. I won't go any further because I'm fighting the urge to compare this to things that have happened in other marketplaces, and I greatly respect John's code and design taste.

I made the point in another comment but, in the case of jQTouch, I would like to see some evidence of any real development to be stalled. It seems they've transfered focus to Sencha Touch. As for that, it's a commercial product; if anything, this announcement should accelerate their development.

Ah, I see the misunderstanding. I don't mean that it stalls framework development, I mean it stalls projects. If I'm starting a new project today for a mobile app, do I go with jQTouch today? Or do I wait and see how jQuery Mobile goes?

This happens all the time in the industry. Familiarity breeds contempt, so it's easy to make a list of problems with jQTouch. But whatever is announced but not shipping has no bugs. It has no performance trade-offs. It is effortlessly compatible with mobile devices back to the Radio Telephones of the 1970s. And its programming model is intuitive, flexible, and powerful with no learning curve.

How can you resist waiting? What project is so urgent that you take a chance targeting jQTouch when it will obviously be made extinct by jQUery Mobile? So an announcement has a chilling effect on framework use, that's what I meant.

Alas, no way around it, you can't drum up support for it without perturbing the environment a little.

That makes more sense. I was interpreting it as getting others to contribute to those projects.

I buy that argument in theory. The problem I have is that there really isn't anything that comes close to what jQuery Mobile is trying to do. Something like this is desperately needed. Sure, Sencha Touch is trying to do something similar but I don't think it's really in any state at this point to have the effect you describe.

As for jQTouch, if it fits the requirements, I don't see people stalling projects for jQuery Mobile. If it doesn't, you're either hacking it to do what you want or rolling your own. Both will probably take considerable time.

As for me, since nothing else out there really does what I want, I decided to roll my own highly customized framework. I'll keep a close eye on, and perhaps contribute to, jQuery Mobile.

Is anybody using jQTouch now (before this announcement)?

Yes. "Wood & Stones" is a "Goban" for playing Go face to face with a friend on an iPad:


I'm not even a novice player, so in addition to supporting Classic Go, Wood & Stones supports a number of Go variations that offer some learning benefit.

You can try it on Github Pages:


It's based on jQuery, jQTouch, iGesture, and JQuery Combinators.

This is the reason I like to use jQuery: I would never have time to take on all the headaches with supporting some of these platforms. I use jQuery so I don't have to worry about all that stuff and I can get my work done.

To my knowledge jQTouch requires jQuery, which has a annoying loading lag.

The initial designs look outstanding: http://jquerymobile.com/designs/

A bit of iOS's proportions, a bit of WebOS's textures, a bit of Android's color – yet they've managed to keep it looking clean and unified instead of middling or compromised. Outstanding indeed.

Maybe it's just me but the inital designs still feel iPhone/iPad centric. The UI/UX for webOS are more gesture-like and I do not see that reflected here as an alternative. However, it's a good start and it is heartening to see that Palm has signed up for this.

This is great. I'm really looking forward to seeing how this is going to mesh with webOS.

Thanks for the positive feedback. You nailed what we were going for. Glad people seem to like the direction of the project!

This is very exciting news, especially knowing that this significantly better-looking theme is coming to desktop JQuery UI. One of my biggest issues with JQuery UI has always been how goofy it looks in comparison to Aristo and Ace (http://www.antipode.ca/2009/themes-sproutcore-vs-cappuccino/)

Wow - in Chrome on Windows 7, that Sproutcore sample page uses 40% of one core of an i7 just sitting there doing nothing. Hopefully that doesn't carry over to a mobile Webkit browser as well...

the mobile ui elements the jquery team is building is the best i've seen so far. they've done a spectacular job there. i hope that as with jquery themeroller, the ui elements for mobile will be customizable.

Yep - they're going to be 100% Themeroller-able. It's going to be a bunch of work on our end but the ability to have a unified, good-looking, UI that works across all platforms is just too enticing to ignore.

Did you consider pre-rendering stuff client-side using SVG? I assume adjusting a few parameters in a JSON file is easier than going to a site, pushing buttons and downloading and replacing files.

We're looking into every possible idea we can to shave file size and images down for mobile. Look for very aggressive use of CSS3 that falls back gracefully. We're hoping to eliminate all images (!) or radically reduce their use compared to current ThemeRoller. Using SVG is an option on the table for some elements but I think we'll end up using a TR style tool for this to generate static CSS for performance and compatibility.

I feel that I owe John Resig a lot.

How will it compare to jQTouch and sencha touch in terms of file size? Looking forward to it.

just to clarify--there's nothing that can be downloaded and used right now, correct? it looks like this is a pre-announcement of something they're building.

Yep - that's correct. Since jQuery is a completely community-driven project and funded entirely by donations we wanted to open up right away to bring more people in. While we're rather confident in the direction that we're heading - doing it in a completely open manner is much more inline with what the jQuery project typically does.

thanks. i'm actually really glad to see you guys taking the lead on this initiative. jqtouch and sencha both have their shortcomings, but it sounds like this is addressing all of those (polished UI, easy to pick up, well-documented, cross-platform/cross-device).

Correct, we are posting publicly our strategy and plans for mobile and plan to have a mobile jQuery version out later this year.

Looks like a call to join the community.

The design shots hint that you are going to have toolbars locked to the bottom of the screen. In Webkit that's impossible to do without taking control of everything yourself (including scrolling) ala Pastry Kit. Is that really what you guys intend to do, or is that just an over achieving mockup?

It's definitely a goal to support fixed toolbars but we're still looking at how to achieve this cross platform in a lightweight way because these can be pretty heavy. We may end up offering a lightweight version that fades/glides in on scroll like the GMail floaty and hooks to support any scrolling fakery script you choose. Looking for input and ideas since were still at the R&D stage!

This is great news. I have been working on a client project for a company to replicate the iPhone App Store in webkit (enterprisey)

I have basically had to roll out my own framework with the help of jQtouch and jQuery. It's been a struggle to say the least, especially while trying to recreate some of the UI interactions such as the elastic scroll and animated slides.

Looking forward to contributing to this project.

Damn, this should give both SproutCore and Capuccino something to mull over, if not help build better builders.

This is great news. I had to hack apart jQTouch to get it to degrade more gracefully on non-Webkit browsers, and development seems to have stopped as the devs have moved onto Sencha Touch.

Nice to see that the jQuery team is taking the project on, and I'll be very excited to use it once it is released.

Does anyone know if there's any source code in a public repo at the moment? I've been asked to present a talk on this, and would like to get in early.

According to this post here http://jquery-howto.blogspot.com/2010/08/jquery-mobile.html it is not available right now and will be available in October 2010.

Guidelines | FAQ | Support | API | Security | Lists | Bookmarklet | DMCA | Apply to YC | Contact