Sencha Inc. | HTML5 Apps

Blog

Ext JS 4 Preview: Faster, Easier, More Stable

November 22, 2010 | Ed Spencer

Ext JS 4 Preview: Faster, Easier, More StableLast week saw the second ever Sencha Conference in San Francisco, where we were thrilled to be joined by over 500 Sencha developers from around the world. The conference was a huge success for everyone, but the highlight for me was when I got to stand up for an hour and introduce you all to Ext JS 4. While we work on processing the videos from the event, I'd like to invite you on a whirlwind tour of some of the most exciting new developments coming in the next generation of our JavaScript framework and flagship product, Ext JS version 4.0.

Awesome New Features

Let's start with some of the awesome new features we're adding in Ext JS 4. While this is by no means an exhaustive list, it does touch on some of the most exciting new capabilities coming in version 4.

Charting

Beautiful JavaScript-powered Charts featured in Ext JS 4.0 (No Flash!) Most people have used Ext JS 3’s Flash-based charting package. You'll probably know that it's good at the basics but is really hard to customize. For Ext JS 4.0 we've created a brand new charting package that is powered purely by JavaScript. We've united the phenomenal talents of Dmitry Baranovskiy (Raphaël JS) and Nicolas Belmonte (InfoVis) along with our very own Jamie Avins to create the most powerful JavaScript charting library we've ever seen. The new charting package works on every browser we support (including IE6) and is fully integrated with the rest of the framework. We'll be sharing a lot more detail about charting in the weeks to come; we've very excited about the new capabilities this offers all of our developers.

Theming

Ext JS has always had a good looking theme, but with Ext JS 4 we’ve taken it to another level with a brand new theme called Neptune. This builds on the great looks and clean design of the current theme, but brings a whole new level of visual polish to your applications. But it's not just a new theme - with Ext JS 4 we have used SASS from the ground up, making it extremely easy to customize your application's theme any way you wish. SASS is already powering the Sencha Touch theme so check it out if you want to see just how easy this is going to be. Neptune Theme coming in Ext JS 4.0.

Improved Data Package

One of the strongest parts of Ext JS is the data package. This uses Stores, Readers, Proxies and the rest to seamlessly load data from any source and display it in your widgets. With Ext JS we've crafted a massively updated data package, with incredible new capabilities such as setting up relationships between Models and saving data to local storage. Ext JS 4’s data package is shared with Sencha Touch so you can already use it in your apps today. We have several blog posts on the new innovations introduced in the new data package, all of which apply to Ext JS 4.

Application Architecture

The first thing we ask ourselves when we get started writing an application is how to structure it. This leads to numerous problems - our time is taken away from the application itself, everyone comes up with a different architecture, and app architecture is just hard to do. With Ext JS 4 we're addressing this long standing problem by shipping with a complete application architecture which can be used out of the box. The application architecture is a standardized way of building applications. They all work the same way, follow the same patterns and have the same file structure. This enables us to create some incredible tools to help automate much of the design and maintenance that go into creating applications. It's amazing how much easier it is to create applications using the new architecture, and you can even get a sneak peak by looking at Sencha Touch's Twitter and Kiva examples. We think this is the single most exciting part of Ext JS 4 and I know you're going to love how fast and easy it makes application development. That said, we know some people have existing apps or their own approach to app architecture that they'd prefer to keep using so we've made it completely opt-in. We’ll have a lot more information on the application architecture before Ext JS 4 ships early next year.

Upgraded Components

Upgraded components, Form Layout and RowEditor in Ext JS 4.0 Every component in the framework has received attention for Ext JS 4. Firstly we’ve unified the rendering and layout of every component to make them all work the same way. We've been through component by component fixing bugs, improving UI and giving a new level of visual polish. Most components have become faster and more flexible than ever before. But we've also added new components to the framework. Two of the most popular extension components - RowEditor and TreeGrid - are now built into the framework itself, rewritten to meet the high quality standards we expect of Ext JS components.

The End of FormLayout

When we asked what are the hardest things to do with Ext JS 3, one answer came up more than almost any other - laying out forms. Forms have always been tied to a FormLayout, which works like a straightjacket to limit a form's flexibility. With Ext JS 4, forms can use any layout, making it easy to achieve any look and feel imaginable.

ARIA, RTL and Much More

Two of the most frequently voiced non-component requests were for better ARIA and RTL support. With Ext JS 4 we’re baking Section 508A (accessibility) and Right-to-Left language support right into the framework, joining the world class accessibility support we already have in Ext JS 3. There are hundreds of improvements, new features and bug fixes coming in Ext JS 4 - far too many to list in a blog post. We'll be posting a series of articles over the coming weeks with lots more information, as well as a full guide once the product launches.

Faster, Easier, More Stable

New features are great, but when we asked our community what we should do to make Ext JS better, three topics came up again and again - speed, reliability and ease of use. Ext JS 4 delivers on all of those fronts.

Speed

Everyone cares about performance - whether it’s how fast our applications load, how long they take to render and layout, or how fast they feel when interacted with. One of the most time-consuming parts of application execution is layout. Ext JS 4 features a brand new layout engine, using all of the experience we have gained crafting this framework over the last 4 years. Those who were able to join us at the conference saw just how fast the new layout engine is, and that it uses the exact same API as Ext JS 3. Although the layout engine is by no means the only performance improvement we have made, it has such a stunning impact that it deserves its own special treatment in a blog post nearer the release date. Ext JS 4 is far faster than anything we've ever created.

Stability

For Ext JS 4 we have overhauled our quality assurance efforts to deliver the most stable framework we have ever conceived. To start with, the framework has the best test coverage it has ever enjoyed, with thousands of new unit tests ensuring that the code works properly. Unit tests are only part of the picture - we also need to ensure the visual components work properly. This has always been hard to do, so for version 4 we have invented a brand new tool that automatically exercises every component in the library. We drive this at the OS level, meaning we can test every OS/browser combination we support by simulating a user clicking around the interface. We call this incredible new tool Visual QA, and will be revealing more details about it soon.

Easy to Learn and Use

Improved Documentation in Sencha Touch 1.0 RC1 Ext JS does amazing things, but has always been too hard to learn. With version 4 we're rectifying this by creating the best documentation we have ever shipped. For a taste of things to come, check out some of the documentation in Sencha Touch. This is the standard we are striving for with Ext JS 4. We'll also be creating guides, doubling the number of examples and providing sample applications. As well as documentation, the API has received a lot of attention with an effort to standardize on a published set of naming conventions and providing more sensible defaults for some of our configuration options. Lastly, we'll be providing an upgrade guide and backwards-compatibility file to make upgrading to Ext JS 4 as painless as possible.

Release

We've been working feverishly on Ext JS 4 for a long time, and are excited to be just a few weeks away from the first public beta. The framework is already more solid than it has ever been, so we can't wait to get it into your hands. We expect to deliver a number of betas through the early part of next year, with a 4.0 final release currently planned for February 28th 2011. I hope you're as excited as we are about the incredible new features coming in Ext JS 4, and that you'll continue to join us as we revolutionize the world of web application development.

There are 101 responses. Add yours.

Crysfel

4 years ago

This is really awesome! I can’t wait to start playing around with this new release!

Harley

4 years ago

Ah crap! I still haven’t upgraded to 3.0!  ARGH! smile
By the way, there was no mention of the migration path.  Hard, impossibly easy?  Are we talking a simple drop-in and replace files, or re-write all my code?

Blacktiger

4 years ago

Are there any plans to provide some simple touch integration with Ext JS 4? It would be nice if Ext just worked on the iPad for example. Of course, a more native UI is always more preferable but sometimes there aren’t enough users to justify writing a whole new front-end.

Saber

4 years ago

Thank you for supporting RTL

Ed Spencer

4 years ago

@Harley we’ll be shipping with a complete upgrade guide for Ext JS 4

@Blacktiger Absolutely. Stay tuned wink

Noam

4 years ago

Thanks for the RTL support.

Loiane

4 years ago

Awesome! I want Ext JS 4! Can’t wait for it! smile

syscobra

4 years ago

Wow, this is going to be great, thanks you all for all the good effort on doing this the best framework outthere…

I just thank god everyday because i found you guys a little more than 2 years ago… It have been a very good 2 years…

Nils Dehl

4 years ago

Awesome!! Can i has Cheesburger Ext JS 4.0 beta pleazzz!!! wink

Nils Dehl

4 years ago

Ahh tag for cross cheesburger das not work in comments wink

anyway i LIKE to have Ext JS 4 now grin

Jonathan

4 years ago

The release couldn’t get here any faster! Great job Sencha. The improvements to layout rendering alone are amazing. Can’t wait to benchmark it against current projects I’m working on.

David R

4 years ago

Will this new Charting Package make its way over to the Ext GWT product as well?

Eric J. Smith

4 years ago

Can you guys PLEASE add history support to the documentation browser?  We have been asking for this for years.  It seems like an easy thing to add and it really would make looking through the docs a LOT easier.

kyriakos

4 years ago

great. looking forward to playing with the beta’s of this! keep it up sencha!

Ilya Skorik

4 years ago

I hope you will change combobox, to now to work with it in remote mode (with id and value) is very difficult.

Ed Spencer

4 years ago

@David R I’ll pass that on - I would certainly hope so

@Eric we’re rewriting the API browser to make it save your open tab state

@Ilya combo loading gets a lot easier with its improved API

Michael Camden

4 years ago

Thanks Sencha, I can’t wait to test out the new version. I’m very excited to hear that you have been working on rendering speed, that has always been an issue for me in my projects.

scarsick

4 years ago

Can’t wait to play with it…! You guys are simply incredible… thanks for making this the best JS library of all… wink!

James

4 years ago

Agreed.  3.3 is pretty good.  And though I find some parts of it frustrating, I’m sure that’s true of all frameworks in some areas.  4.0 sounds like it is going to be awesome for us.

Dhana

4 years ago

Wow..! I am new to ExJS and just started learing..! This is great news..! simplified design and new features..
When and where do we get ExtJS 4.0 for trial..?

Isaac Peraza

4 years ago

Thanks to all contributors to this new version and its predecessors, thanks, thanks and thank you very much:)

Scott

4 years ago

I hope you focus on performance for the new charting engine. The old one would slow to a crawl with a few thousand points.

Ed Spencer

4 years ago

@Scott don’t worry about that - we’ve put a lot of effort into making sure the new charting engine performs and scales extremely well

Awesome Bob

4 years ago

Wow, I’ve been working with ExtJS since 1.0 and this is really motivating. I love how much simpler it will be to built components that work together than has been in previous versions!

Scott

4 years ago

@Ed Spencer Great! I look forward to giving it a spin.

Richard Tallent

4 years ago

Great work, guys!

My one thing on the wish-list is font size independence—gracefully supporting user font size preferences and hopefully allowing a somewhat standardized way of NOT specifying everything in pixels.

gelleneu

4 years ago

This is great!!!

But I have a question: how can I use Sencha Touchs data Package today in my application? Which files do I have to include in my Ext 3.3 application?

frank

4 years ago

The new charting supports IE6—This is quite important to our computer here, cause most of them are IE 6 clients!

Steve Jones

4 years ago

Interesting. I’m still wondering about building Ext JS into my system and 4.0 does make it more compelling.

Just need to sort out the licence terms now, as the previous OEM terms seemed way too one-sided. Something more equitable would clinch the deal, subject to 4.0 being stable and suitable for use in our system.

Andrew

4 years ago

Great work!  Will there be a reduced rate for upgrading from version 3?

Niklas

4 years ago

Will Ext Designer get updated to support 4.0?

oo

4 years ago

How much ?

Westy

4 years ago

Hi,

Great news!
I had just started looking at moving from Ext 2.2.1 to Ext 3.3.0, and now it sounds like Ext 4 is much closer than I suspected!

I really need to get cracking on it so some clarification would be nice on timescales; you say you are “just a few weeks away from the first public beta”, but then go on to say that you “expect to deliver a number of betas through the early part of next year”.

That sounds to me like there will be an initial beta very soon, then further beta’s in the new year. Correct?

Any date locked down yet?
Any previews for advance purchasers?

Regards,
Westy

jose mauricio

4 years ago

We’ll all be waiting fot this new fantastic release!!!

ionel condor

4 years ago

Any news about the new licence model for commercial use ?

Thanks,
Ionel.

Lele

4 years ago

Great news, thanks to all !
One question : what about famous memory leaks troubles (IE !!!) ?
I think in an enterprise environment this is the major issue today.

Thanks,

Lele

LisTik

4 years ago

It would be great if you publish beta asap.

Chandru

4 years ago

Cheers!

Ken

4 years ago

I second Ext Designer support; bought it just so development was easier.

Also, looking forward to non-flash, non-svg charting (or perhaps you’re using svg on the backend) but won’t the new charting require updated browsers?

Mike

4 years ago

Ed, it was great to see your presentation about Ext JS 4 @senchacon and I’m glad to see the details summarized nicely here for the rest of the community to get excited about the upcoming release! I am especially excited about the new architecture (MVC) and the charting package, not to mention the TreeGrid becoming an official component. Thank you guys for helping our development work get a little saner smile

Leonardo J. Parra

4 years ago

great news !!! Thanks for your effort !

Chaitanya Patil

4 years ago

awesome! great work!
cant wait to use forms without Form layout smile

Grgur

4 years ago

I think i just crapped my pants

Ed Spencer

4 years ago

@Ken the new charts use the best engine they detect on the browser so will use SVG if it is present. You can always turn it off to force canvas or VML, though we’ve found SVG’s performance is often superior

@oo same as Ext JS 3

@Lele we put a lot of effort into plugging memory leaks in IE - see our post on this subject at http://www.sencha.com/blog/2009/12/17/ext-js-3-1-massive-memory-improvements-treegrid-and-more…/

@Andrew we usually offer one yes - I’ll check back

@Niklas yes, Designer will be updated to support Ext JS 4

one piece swimsuit

4 years ago

I’m looking forward to the final release in February

Christian

4 years ago

WoW, the release comes out quickly. I really like how informative you guys have been. Keep up the good work, feb 28th is just around the corner !

MrSparks

4 years ago

The new charting engine looks amazing. I’ve been playing around with MIT’s Protovis as a possible charting alternative to the one bundled with EXTJS 3.x However… based on the InfoVis demo’s (above) I feel much more confident that EXT JS 4.x will deliver what I need.

I’m looking forward to the performance gains and improved API Documentation also. I am a little nervous about the “end of FormLayouts”. Feels like there could be some compatibility pain ahead, especially for complex layouts?

Can’t wait to get my hands on the Beta!

Great job EXT JS Team!

Darren

4 years ago

This is simply amazing. I cannot wait for version 4! The restructuring is what I am most looking forward to. Good job guys!!!

Jay Robinson

4 years ago

@Andrew, If you purchase Ext JS 3.3 between now and December 31, 2010, you will be eligible to receive Ext JS 4.0 when available (eta is February, 2011).

Gaël Deest

4 years ago

Too bad I purchased ExtJS in August… I’m really looking forward to a reduced upgrade fee.

Primoz

4 years ago

Thumbs up. Can’t wait for RTL and other goodies.

altroz

4 years ago

can’t wait to try it.. :D

ibnesayeed

4 years ago

I am impressed over all and thrilled by RTL news. So many thanks in advance. Sencha team rocks! grin

peter

4 years ago

????????support grid with vertical header?

Naga

4 years ago

Good to see TreeGrid component in Extjs 4.0 plan. Hope it would be feature parity like in ExtGWT tree grid.

cyprianmeister

4 years ago

Can`t wait to get my hands on it!!

mehdi ghadimi

4 years ago

RTL ?????? ?? ????  ???????? ??

Thanks for support RTL

Sergei

4 years ago

What about i18 support? Really it would be great if framework can format numbers according to regional settings.

Grgur

4 years ago

@Jay, what if I currently own an Ext JS 3.0 license? Am I still eligible to receiving Ext JS 4.0 when available?

Francois Botha

4 years ago

I love LESS and I’m just curious why you chose SASS rather than LESS.

AMp

4 years ago

i’m waiting for GXT 3

Horák Jan

4 years ago

Any plans for official multiupload component?

shawn

4 years ago

@frank IE6 must die!

Ed Spencer

4 years ago

@Francois we’ve tried both - went for SASS in the end because of Compass, which makes theming really easy. LESS is awesome too.

@Horak not as yet

@shawn indeed, but we’ll continue to support it in 4.x

Talha

4 years ago

waiting impatiently, seems very promising.. Thanks to everyone who has included in this great project..

Arno.Nyhm

4 years ago

why is GXT always behind ExtJs and not on the equal level :-(

christ

4 years ago

very cool

Jalak

4 years ago

it’s awesome!
can’t wait for RTL support in EXTJS 4.x

Dicky Indrolaksono

4 years ago

I am using ExtJS for over 1 years already, and it’s just so awesome… Very satisfied with the performance and flexibility. Can’t wait to see what you guys have been doing for the 4th generation of ExtJS.

Igor Goroshit

4 years ago

Finally it will be easy to work with ExtJS in RTL language.
Can’t wait to start using ExtJS4 in our new products.
Thanks a lot for adding RTL support to this excellent framework.

Edwin Commandeur

4 years ago

Please quit supporting IE6 in ExtJS 4. It is insecure and it should die: http://www.bringdownie6.com/ . There are so many alternatives (use ExtJS 3 for IE6 for example), that there is really no sense in supporting IE6 anymore. Hopefully, Ext can then generate a little less convoluted DOM.

Cristian Pop

4 years ago

I agree with Edwin. But it seems too late. I was hoping that too you will ditch IE6 support and clean up the DOM. Maybe we can convince you guys and do that in 4.1. Pretty please !!!

Ryan Bastic

4 years ago

they shouldn’t and won’t be dropping IE 6 anytime soon. many corporations are still stuck on IE 6—and what do you think people are using ExtJS for?

Ed Spencer

4 years ago

IE6 support won’t be going away any time soon; there is still a surprisingly high need for it.

We took a long look at this for Ext JS 4 and have found a good way to mitigate some of its strictures, gaining the corresponding speed and DOM lightness in the process.

Abdel Olakara

4 years ago

Eagerly waiting for version 4. Mostly because of:
1. New Charting components
2. RTL support
3. New theming

Good work Scencha team.. when can I get my hand dirty with the beta?

Tamesh

4 years ago

Incredible smile

Wilfredo Rodríguez

4 years ago

It’s posible. The migration process from the 3.x.x version could be hard.

Rodolfo

4 years ago

it’s awesome !!!!  waiting for upgrade my appz .....grin

Kevin Cho

4 years ago

I just got on board w/ Ext 3.X and already 4? wow! congrats and can’t wait!

jacksyc

4 years ago

i can’t wait for you

Vijayendra

4 years ago

This is so awesome!! wink

Mike

4 years ago

Is Ext4 going to be backward compatible with v. 3?
In other words, I would like to write an application in Ext4 but I would like to start now. And since I don’t know when v. 4 will be released, is it OK to start in Ext3 and then move to Ext4?
Perhaps, you could share some details on when exactly are you planning to release the first beta?

Justin

4 years ago

IE 6 support has become a self-fullfilling prophecy. So many argue it’s needed “because it’s still widely used.” But the reason it’s still widely used is because designers/web developers won’t dump it. So Google and Facebook are ending IE6 support, why can’t Ext JS?

I won’t be too much of a ninny, Ext JS 4 looks incredible, but seriously at least roadmap ending support for IE 6…

Vladimir

4 years ago

Has this issue been resolved in ExtJS 4:
“I timed extjs on my app, how long it takes to load my application. A lot of delay is there in fething data for grids and forms.

Extjs 3.0.0 : chrome 4.7 s, IE 12 s
Extjs 3.0.3 : chrome 5 s, IE 17 s
Extjs 3.1 : chrome 7.25 s, IE 21 s”

(source: http://www.sencha.com/forum/archive/index.php/t-90585.html)

We have a large ExtJS application powered by ExtJS 3.1.1.We are experiencing some performance issues. So just wanted to make sure that upgrading to ExtJS 4 might be a better solution than downgrading to 3.0.0 (with which the performance was better for us).

Ravindra

4 years ago

when can I get my hand dirty with the beta ?

ghasem

4 years ago

Thanks very much for support RTL

Ionatan

4 years ago

Another vote for the beta release!

BebetoBlu

4 years ago

Fantastic. I can’t wait !!!

papay

4 years ago

Great news! Thanks. I’m waiting for it.

shahab

4 years ago

Thank you for supporting RTL

Kevin

4 years ago

Hey! This is an awesome update! I was wondering is the beta version out yet? I cant seem to find it since the final release version is in few days.

ziv Gal

4 years ago

Thanks for the RTL support from Israel and Hebrew speakers

Wladimir

4 years ago

I have been a happy ExtJS developer for a long time, and these are exactly the kinds of improvements I like to see ... especially the easier theming, no more having to integrate 3rd party graphing packages, and infinite scrolling grids. Keep up the good work!

TigrouMeow

4 years ago

I thought the release was planned for February 28th 2011 :p I love the developer preview, but many things are missing (accordion, html editor, new theme, etc…). Can’t wait to please with a more advanced version smile

Sajid Ali

4 years ago

Please provide any updates regarding:
“4.0 final release currently planned for February 28th 2011”

Sadheesh

4 years ago

I’m waiting for version 4 release. Because array prototype remove and indexOf is adding to array variables. That prototypes giving error when we use FOR IN loop. Is it solve this issue on this new release?

let me know when could you release the version

franko lornes

4 years ago

Are there some learning materials for extjs4? Because we are starting new project with RIA and thinking about extjs(javascript way) or gwt(java way), but I can’t find any learning sources for extjs4. When there are nothing learning sources we of course must choose gwt.

Charles

4 years ago

If Ext JS 4 is faster, I’ll appreciate it.

cnesbit

4 years ago

Really looking forward to Ext4! Can’t wait to convert our charts so we can get rid of flash, and the optimized grids will be a dream come true! ...to name a few…

Any word on the “4.0 final release currently planned for February 28th 2011”? We’ve been looking forward in anticipation of it’s release for some time and would like a solid release date (whatever it is) that we can plan our development processes around…

Manuel Hernandez Mendoza

4 years ago

Necesito ayuda: en IE8 marca errores y FireFox 4 todo perfecto

Mensaje: ‘events’ is null or not an object
Línea: 10962
Carácter: 9
Código: 0
URI: http://localhost:8080/proyecto/lib/ext/ext-all-debug.js
Mensaje: ‘dom.style’ is null or not an object
Línea: 13261
Carácter: 21
Código: 0
URI: http://localhost:8080/proyecto/lib/ext/ext-all-debug.js

Dhana

4 years ago

Hi,
Great product .. with amazing features..!
How do we learn ExtJS 4.0 new features (Even the sencha tutorial has old samples)
Is there any books availble .. to learn and jump start..

anyone had any ideas..
Regards
Dhana

Comments are Gravatar enabled. Your email address will not be shown.

Commenting is not available in this channel entry.