Introducing Sencha Touch: HTML5 Framework for Mobile
On Tuesday, we announced that Ext JS, jQTouch and Raphaël were combining to form Sencha. We said you wouldn’t have long to wait to see some amazing results. So here they are! Today, we’re overwhelmingly, insanely, ridiculously excited to introduce Sencha Touch, the first HTML5 framework for mobile devices. We think it’s the first cross-platform framework that builds web apps that make sense for mobile devices. It comes with a comprehensive UI widget library, complete touch event management with CSS transitions and an extensive data package.
An HTML5 Framework
We’ve blogged a lot recently about the HTML5 family of technologies, and we’re calling this a HTML5 framework. Why? A few reasons. First, HTML5 makes Sencha Touch applications offline capable. For example, our Solitaire demo uses HTML5 localStorage to save game state. Second, HTML5 Geolocation allows for ridiculously easy geographical awareness in your applications. Our GeoCongress demo uses this capability to find your local Congressional representation, for example. The third reason is that the framework uses CSS3 capabilities extensively. Apart from the icons, there are practically no images in the component library — they’re all built with CSS3. CSS3 gives us border styling, gradients, shadows and a whole big toolbox of styling beyond that. We’ve made our toolbars, buttons, sliders, meters etc. from pure CSS. It also provides us with the rich transitions and animations in the framework. There are even more HTML5 family capabililities that we want to expose in the framework as we go forward, like web workers and more.
The entire framework is only 80Kb gzipped, even before you take out the stuff you don’t need.
The Full Mobile Package
I won’t take this space to go over the entire feature list, but we feel confident that a majority of mobile apps today could be developed with Sencha Touch and deployed as pure web apps because they don’t need access to device capabilities like cameras or bluetooth. And let’s remind ourselves why web applications are amazing things. They work cross browser because they’re based on standards. You don’t need to update them. As a developer, you never need to worry about old versions that people won’t upgrade. They’re searchable and their content shows up in search engines, which do a far better job of figuring out what people mean than any app store hierarchy. Practically anyone can write them. And best of all, you can plug in multiple third party advertising, analytics, social connector, mashup, affiliate, etc. into your application trivially. While it’s true today that you need to wrap your Sencha Touch application in a native shell (such as PhoneGap) in order to get access to camera or accelerometer. But with the current industry trends, we don’t think this will be the case for too long.
Our First Public Beta Release
This is the first public beta of the framework and we welcome your feedback. There’s definitely still work to be done. We’re working on Android forms with great attention. We need to make it easier to build a HTML5 cache manifest. We need to build an Optimizer that will strip out parts of the framework that you don’t need. And then, we have some awesome graphics planned, hopefully before release.
The initial beta is under a GPLv3 + FLOSS license. We’d like to give open source folks the benefit before we introduce a commercial trial license. And we’d like to take the opportunity to emphasize something that many people miss: that we have Free and Open Source exceptions as part of our GPLv3 license. So if you want to, you can include Sencha Touch in your Apache and OSI approved licensed projects without triggering the GPL’ing of your project.
The Third Web Era
If the Browser wars of the 90’s were the first era of the web, and the long dark of IE6 was the second, we think we’re now emerging into the third era of the web. Where amazing new browser technologies let developers create beautiful and useful applications to help people get more done in more places, and enjoy using the tools that let them do it.
The Sencha Team