Kegan Blumenthal,
GM of Sencha Inc.I am excited to share Sencha’s Updated Roadmap. Over the last six months since I joined as GM, our core team has worked hard to set Sencha on a clear growth path. We shared some of our plans in April this year, and I am happy to report that we are making significant progress on all fronts. The future of Ext JS is bright, and we’ve complemented our product line with robust offerings for React, Angular, and other frameworks with the release of ExtWebComponents. We have a lot of work ahead, and I think that our community should be excited about the future.
Table of Contents
2019 in Review
The release of Ext JS 6.7 Modern toolkit added support for grid features such as filtering, locking, and virtual scrolling along with other enhancements—material chip design, multiselect combobox, and color picker. The Ext JS 6.7 Classic toolkit included multiple component improvements to grid, calendar, panel, charts, window, combobox, tabs, and dashboard, further enhancing the UIs developers can build with Ext JS.
We also updated our popular IDE plugins for JetBrainsⓇ, Eclipse*, and Microsoft Visual Studio. These provide productivity-boosting capabilities such as the ability to quickly write Ext JS code within developers’ favorite IDEs. As you will note on our roadmap, IDE productivity is an important future focus for us.
Late last year, we introduced the first Community Edition version of Ext JS, designed to give aspiring JavaScript developers simple yet modern tools to build great-looking, cross-platform enterprise applications easily and quickly. The Sencha Ext JS Community Edition (CE) provides a core framework, hundreds of modern components, material theme, open tooling, and much more with a limited commercial use license for free. While we have thousands of downloads, we believe in you to help popularize Community Edition and broaden our developer community.
With the recently released Ext JS 7.0, we have improved the Modern toolkit dramatically. We recommend starting off both desktop and mobile development using the Modern toolkit. Ext JS 7.0 includes improved support for multiple device types, which means that phone, tablet, and desktop app development can be accomplished in a single Ext JS project—called Ext JS Universal application. Read on to learn more about the cool new features introduced in 7.0.
Earlier this summer, we also released our free Upgrade Adviser tool, which scans your Ext JS 4.x and Ext JS 5.x apps to identify and report problems in source code that need to be addressed before upgrading to the latest Ext JS version.
Updated Product Roadmap
From the free Upgrade Adviser Tool to the long-awaited Ext JS 7.0, to ExtWebComponents product, the Sencha Product Management and R&D team have been busy! We’re excited to get these builds in your hands ASAP and anxiously await your feedback on what’s working well and what we can improve. Below is a look at the upcoming releases.
[Note that timing and scope are not committed until product general availability (GA)]
Q3 CY 2019
The following products were released in August and September 2019.
Ext JS 7.0
Ext JS 7.0 is our latest release, which offers an improved customer experience along with many new features. We’ve also added a contemporary WYSIWYG HTML Editor to edit application code using the smartest, most feature-rich editing capabilities.
- Grid Enhancements: Plugins for Drag and Drop and Row Editor; ability to easily move, reorder, or insert content in a grid cell; collapsible group to expand/collapse group of rows
- Tree-View Drag and Drop to easily move and reorder nodes in a tree view
- Accordion Layout supporting multiple panels and the ability to easily expand and collapse
- Breadcrumb Toolbar to easily display hierarchical data
- Form Group allowing grouping of checkboxes or radio buttons so that they can be validated or arranged together
- Addition of localization package to Modern toolkit with support for 10 additional languages
- Improved Accessibility, tab-indexing, and focusability
- Material theme support for the Classic toolkit
- ExtReact and ExtAngular updated with all the Ext JS 7.0 improvements
In the future, we plan to make debugging even more flexible for ExtReact, ExtAngular and ExtWebComponents by removing the webpack plugin dependency.
New Product – ExtWebComponents
With the 7.0 release, we also launched a brand new product as part of the Sencha product line—ExtWebComponents (EWC). EWC provides hundreds of prebuilt UI components to easily integrate into your web applications built with any framework or no framework at all.
In this EWC release, you have the opportunity to use the rich Sencha Ext components as web components in a platform-agnostic application build strategy. We kicked off our Early Access (EA) program back in May and gathered a lot of valuable feedback from our customers leading up to the final release. We’re very excited about EWC and how developers using different JS frameworks or vanilla JS can take advantage of Sencha’s best-in-class component library.
Key features include:
- 140+ modern Sencha Ext components
- Sencha Themer to theme your application using graphical tools—without writing code
- All the Sencha tools to build applications with ExtWebComponents
Sencha Test 2.3
Sencha Test is our unit and end-to-end testing solution for Ext JS apps. It allows developers to create robust end-to-end tests to deliver quality apps. It also includes support for testing of ExtAngular, Angular, ExtReact, and React apps.
Key Sencha Test 2.3 features include:
- New npm packaging to enable running tests on any build system
- New Select Option
- Travis CI support
- Improved TeamCity testing support
- BrowserStack support and additional browser farm enhancements
- Improved backend support and reliability
Q4 CY 2019
Ext JS 7.1
We have heard your reports and are striving hard to make our product even better. For 7.1, we plan to focus on quality improvements in multiple areas such as Grid improvements, forms, and documentation—all centered on increasing the quality of Sencha’s data-rich enterprise components. We are also planning updates for ExtAngular, ExtReact, and ExtWebComponent.
GXT 4.0.4
GXT is Sencha’s solution for Java developers, allowing them to create
feature-rich HTML5 applications using Java and GWT (formerly Google Web Toolkit).
The 4.0.4 release will build on the feature set of the 4.0.3 release and will focus on addressing key improvement requests from our customers.
Visual Studio Code Plugin Preview
Earlier in the year, we communicated our plan to evaluate options for the future of Sencha Architect. Based on many discussions with customers and a POC, the team determined that the best alternative for now is to continue to evolve Sencha Architect in its current form. We have many large, successful customers using the product, and a significant re-architecture may make upgrade challenging. However, the team came up with a great idea for an integrated Microsoft Visual Studio Code plugin that addresses some of the vision around Sencha Architect. This approach allows developers to build HTML5 applications using drag-and-drop features so that less time is spent on manual coding and application code is optimized for high performance.
Our Microsoft Visual Studio Code plugin has been growing in popularity, and looking at the overall growth, we have been considering ways to provide the Architect experience within Visual Studio Code. As part of that, the team has been working on a proof of concept focusing on a new Sencha GUI design plugin for VS Code. The main goal of the GUI plugin tool is to combine our rich stand-alone tooling products into a single, cohesive solution that developers can use within VS Code. This preview is being built out as a Visual Studio Code plugin since the IDE meshes well with our existing technology choices and also provides tooling for the Ext source code as it’s being written.
If you’re an existing Architect user, you are likely aware that one of the main challenges is its reliance on metadata to understand the code generated. The new plugin aims to remove this dependency by creating a visual builder tool that can both parse and write valid Ext code.
Sencha Themer is a great tool for creating themes using the extensive Ext JS theming framework, making it easier for developers and designers to create beautiful themes for any Ext JS application. Currently, Sencha Themer creates stand-alone themes—which may not be specifically tailored to your Ext JS application. The new tool will look to solve this by coupling Themer’s visual tools with your actual Ext JS application code.
In addition, there are several features that cross-cut all of our tooling solutions. By combining functionality into one tool, we can have better integration among these shared features. For example, “inspecting” your application in a browser could point you directly to the source file that generated it and provide all configs used to generate it and all theme variables/mixins that apply to it. This is something that is still actively being prototyped, and we plan to provide a preview in the future.
If you love Ext JS, we encourage you to apply to be part of our MVP program. MVPs frequently get an early access view of what’s coming in the product through NDA briefings, so it’s a great opportunity to get involved.
Emphasis on Trainings and Curriculum
We want to continue to equip your teams with the knowledge to start building applications quickly and efficiently. This quarter, we will focus on designing curriculum and offer additional beginner/advanced trainings to make it easier for your teams to hire and train new Ext JS developers.
Q1 CY 2020
Ext JS 7.2
Ext JS 7.2 will focus on improvements in component usability. We will continue to expand improvements across our api-docs, guides, and examples—providing an overall improved reference experience.
We plan to provide 7.2 updates for ExtAngular, ExtReact, and ExtWebComponent, so expect to see even more improvements in the trees, grids, forms, and layouts. With every release we are continuously looking to make the components more valuable by improving the simplicity of use and ease of debugging and deployment.
Ext JS 8.0 “Sequoia” Preview
The goal of Ext JS has always been to build on the standards of the web and make it easier for developers to create enterprise-level applications using web technologies. Over time, the enhancements and solutions Ext JS has baked-in have been standardized by the web community in new ways.
Ext JS 8.0, codenamed “Sequoia,” has been focused on going back to the very lowest levels of the framework and reworking core decisions with the new set of standards. This project has the goal of leveraging the Ext JS programming paradigm by using the latest JavaScript features and standards. This will allow for a modern front-to-backend coding strategy. Sequoia also aims to remove custom-built tooling and allow Ext JS to fit into any JavaScript workflow. This project is the next evolution of the Ext JS framework.
Sequoia (previously referred to as Ext JS Next) has been in the works for a while, and we plan to release the next major version of Ext JS later in calendar year 2020.
Ext JS 8.0 Sequoia
Ext JS 8.0 Sequoia will offer our set of components in two phases—the first being an early access (EA) preview, and the second general availability (GA). The two phases will provide customers the ability to provide feedback early on along with the benefit of simplifying the migration from 7.0 to 8.0 as we move our components to the modern architecture.
- All Ext JS modern components will be available in Ext JS 8.0 Sequoia.
- Ext JS 8.0 will improve rendering and layout performance with all our component features.
- Experience the new and improved tooling integration and visual editing.
- Ext JS 8.0 will make building applications faster and easier than our competitors. We believe that the features in this stack will help you get the job done more efficiently.
Thoughts about our roadmap, feature requests, or any other feedback? Leave us a comment below.
Getting Started with Ext JS
Build your data-intensive applications with the newest features in Ext JS 7.0.
- Download the free 30-day trial of Ext JS 7.0
- View the Ext JS 7.0 examples on any device
- Read the Getting Started Guide
*’Eclipse’ is a trademark of Eclipse Foundation, Inc
Note: These plans and roadmap represent our intentions as of this date, but our development plans and priorities are subject to change. Accordingly, we can’t offer any commitments or other forms of assurance that we’ll ultimately release any or all of the described products on the schedule or in the order described, or at all. These general indications of development schedules or “product roadmaps” should not be interpreted or construed as any form of a commitment, and our customers’ rights to upgrades, updates, enhancements, and other maintenance releases will be set forth only in the applicable software license agreement.
Will Sequoia only include the Modern Toolkit? Or will the Classic Toolkit also be included in ExtJS 8?
Good question. We’re going to migrate the modern toolkit to the Sequoia. I’m mapping the missing features from classic to modern and tracking those features we need to move too modern. The missing features will get mapped into phases during the build out. Moving to Ext JS 8 will allow us to increase or engineering velocity of feature implementations too.
The biggest problem when porting an app from classic to modern toolkit is, in my opinion, layouts.
The modern toolkit implements only a subset of the layouts available with the classic toolkit and the most useful ones are left out, such as the Border, the Absolute, the Anchor.
If an app uses these layouts it will be difficult, in my opinion, to implement the same behaviors in the app brought in modern.
The loss of these layouts is the biggest obstacle to considering the modern toolkit as the primary choice for an app designed specifically as a desktop app.
I know that modern layouts only use CSS, but a sort of solution to guarantee the above mentioned layouts would be really desirable.
You don’t need a layout to accomplish what border layout did. KitchenSink for modern does a pretty good border layout without a layout.
sure it’s pretty good, but not great. 8.0 needs border layout.
A simple request to implement really…
O guess sequoia will be a New evolution of Ext JS using new JS standands and Will Port modern stuffs, and wont have toolkits anymore. Maybe I am wrong.
Great question and points! Yes, that’s the goal, one toolkit with all the features we in modular components and options using Modern ECMA standards.
Thanks for the update.
I would like to see you removing bloat in minor versions removing/replacing non standard that can be polyfilled by the closure compiler.
E.g arrays, promises etc.
Good feedback! Increasing performance and making the footprint smaller is a huge goal of ours. Ext JS 8 Sequoia will be using the latest ECMA syntax with the goals to using polyfills to backport features in some browser engines. The engineering team definitely has this in mind.
WoW.. I am very excited to see what you all have planned for the not so distant future !
Thank you, that’s great to hear! Thanks for the feedback! We will be aiming to show off the build out as we head down the road too.
Anything about a GPLv3 release?
Great question. Yes, we are planning on releasing the GPL version soon.
When you might ask? So it goes, we have the Community Edition release up to bat next, which is due out soon. Once we complete that, we will ramp to release the GPL version.
Why is it taking so long? We have some business operations and goals to check off for each release and make sure its high quality release. Coordination with all the teams and delivery has to take place too. That said, we’re looking forward to releasing GPL soon, sometime after the CE release. I’m hoping to get there in the not to distant future.
Could you be a bit more specific on the release time line? I’m hoping with in the next few months. I know it’s a large time frame but we’re trying hard to get it out soon. I have to be careful here, we are software engineers and sometimes the systems and processes fail, so it could always slip. But we are working hard to get there as soon!
Will the Community version be updated?
Great question. Yes, it’s being prepped as we speak, and should be out really soon.
That said, I have to be careful here, we are software engineers and sometimes the systems and processes fail, so it could always slip. But we are working hard to get there as soon!
I hope there will be more features and enhancements for the future Sencha Architect release. Also it would be great to improve the speed for building (testing) SA projects.
Thanks for your feedback. We’ve also noticed these issues too. This is something we are looking in improving. We’re also looking at how we go about improving this experience. In general we’re putting a big investment in R&D with our visual editing experience so I’m hoping we can radically improve the visual editing experience in the near future. I’m hoping we can combine all the features of Themer, Architect and Sencha Test into one place. But I can’t promise anything yet, but what I can say we are seriously looking at how we can move in this direction.
other feature massively missing is creating custom classes on application node – this would also support a range of features like profiles and such…
still hoping…
Would also be great to co-ordinate tooling releases… SA just got a late update, while themer got one months ago when 7.0 came out…
also not all features implmented yet from framework…
would also be a massive win to keep metadata and be able to output VueJS, React or Angular from SA… and bake themer into architect… (as SA has more custom options)….
Great feedback. Regarding custom classes on the application node, I don’t think this will be a problem in 8.0. But I’ll double check with engineering. Great idea.
Regarding co-ordinating the release. Yes, we had a few things pop up that were painful. That wasn’t something we wanted to do either. I’ve tuned our release checklist to account for the release sync up, and will make sure 7.1 goes smoother!
The visual editing experience is a big priority. I think it would be great to have all the features in one app, like you said. We’re exploring the options with what you have in mind. Great ideas!
Sounds like Architect will be killed off and the replacement is a plugin which will still not address its main shortcoming: the inability to configure components using the latest Ext features without writing code. Truthfully, I never worried about “reliance on metadata to understand the code generated”. I just wanted it to work, which it didn’t in any meaningful way.
Thanks for your feedback. We’re looking at the improving the visual editing options, we really want to improve our visual editing experience! Architect has some limitations based on how we built it, which is why we’ve been investing in R&D with the visual editing experience. We’re pretty excited about the options and possibilities of our initial rounds of R&D. We’re looking at solutions to solve this pain point in the not too distant future. It’s taking some work out the details. I will say I’m pretty excited to say I think we will have some more visual editing options to show in the not to distant future. I’m hoping we can share more in the not too distant future.
As a very old extjs developer, i would say GPL and modular new core would be the only way to get community back. Well done and hope to see 2020 for those.
Thanks for your feedback. We’re looking to release the GPL version soon, after the CE release. I would like to see our open source community too.
Don’t kill Sencha Architect.
I’m using it on OSx and i do not want install any Microsoft Software!
Thanks for you feedback. I’ve heard this from others too. We’re considering our options here, and how we move the visual editing experience forward. We want to provide a strong compelling visual editing experience that makes developing visually efficient with out errors. Architect has some limitations so we’re looking at a new engine to get the job done. So we’ve been investing in R&D to help flush this out. We’re looking at what it would take to migrate projects to the new engine, model we build apps visually. That said, we want to provide a compelling visual editing experience in the future. Until then, Architect is a valued product here, and have no plans at killing it in the near future.
Luca you must be the only person on the planet not using visual studio code…
It always surprises me the wealth of editors being used when I meet up with our customers. With that in mind I can see it would be useful to help provide tooling for the variety of devs out there.
When the jetbrains plugin license issue will be fixed? We cannot use it since the beginning of April.
We’re aiming to get this fixed in the next release. I hear there is a potential workaround that could be had through support.
Will Sequoia be built on TypeScript? Or just simple classes and let/const stuff?
Will there be a transpiler for older browsers or do you plan to drop IE support?
Good questions. Our goal is to build with Javascript aiming to cut out transpilers when desired. We’re using the latest ECMA syntax, which means to support older browsers we would have to do some compiling or downsampling so the code works in the older browsers. We haven’t fully painted this story yet, but something we will be looking at supporting. We will have more to share on this subject in a couple months. Regarding IE support, we’re debating this now. What would you like to see supported?
I forgot to mention, we are looking at providing typescript definitions for our Sequoia library. More on this will come as we get closer too…
Is there any training offered for Sencha Test?
This might be of interest, there are a couple classes here: https://staging.sencha.com/training/#sencha-test
Hi Brandon, how could we get access to dev/beta version of Sequoia?
As of now we don’t have anything to show yet. It’s super fluid at the moment as we put together the architecture. The MVPs or MVP program will get the first look once it starts to solidify. And as an MVP, will get to help to contribute feedback first as well.
Further on the Classic framework – what’s the suggested migration path for large apps that use Classic? I’ve got an application that has been developed over several years. It’s got ~900 custom classes, ~470 of which are UI – about 70K lines of code in the Classic Framework.
Rebuilding this as a single big-bang release isn’t something that’s going to happen, so we can’t simply re-write the UI. We need an approach to move off the Classic framework in an incremental fashion, where we use Classic alongside whatever the replacement is for some time.
My understanding is that you can’t do this with Modern – while you can have a code base that contains both Modern and Classic, your packaged app (as accessed by the user) is one or the other.
If this isn’t addressed, and Classic is removed, then we’ll need to stop upgrading, which in turn will mean we end up looking for a total replacement.
Great question. The answer is no, we are not removing the classic toolkit from Ext JS 7. Most of our customers are built on classic toolkit. And with this in mind we want to continue to support and improve this toolkit in ExtJS 7. We have two routes of development going on. One we improve what customers already have, and we also invest in our modern toolkit parity with classic. So with Ext JS 8, while it won’t have the classic toolkit, doesn’t mean we will abandon classic. We will continue to support classic. And another route we are looking at, we are investing heavily in upgrade tooling and will continue to do so. The aim there is to help make it easier for large complex project to upgrade if they want to. At the end of the day, the goal is for those who want to develop with Classic can. We’re close to bringing modern into parity with Classic and will continue to drive both toolkits.