DevExtreme JavaScript – 2019 Roadmap

DevExtreme Team Blog
22 January 2019
We wanted to thank everyone who voted in our 2019 Roadmap Survey. We value your feedback and thank you for sharing your thoughts with us. The following is a summary of our official 2019 roadmap.

Important Note: In nearly every instance, we selected features/products that received the highest vote count. In many instances, total votes for features that appear on this roadmap failed to break the 50% mark. This does not mean that the feature/product did not win the vote - it simply means that it received a plurality - not a majority.

DataGrid & TreeList

Record Reordering (v19.1)

Percentage of users who voted for this feature: 69%
We’ll give you the ability to reorder DataGrid rows and change TreeList parent-child node relationships via drag-and-drop.

Excel-Like Editing Mode (v19.1)

We announced this feature in our 2018 Roadmap but it wasn’t ready to ship when v18.2 was released. We have received useful feedback on this feature and are going to ship it this year.

Cross-Component Drag-and-Drop (v19.1 or v19.2)

Percentage of users who voted for this feature: 69%
Some business scenarios require that users move items from one collection to another or from one hierarchy to another. We hope to support cross-component item drag-and-drop operations.

Accessibility Enhancements (v19.1 or v19.2)

In v18.2, we improved the DataGrid’s keyboard navigation capabilities with our ‘focused row’ feature. We now want to address remaining accessibility gaps. We will make it possible to navigate to and work with any existing DataGrid and TreeList element (such as grouping, sorting, paging) via the keyboard.

TreeList

New Filtering Modes (v19.1)

Percentage of users who voted for this feature: 75%
We’ll hope to extend the filtering capabilities of the TreeList with the following features:
  • Enable search only through tree leaves
  • Include filtered nodes children into filter results.

Remote Data Paging (v19.2)

Percentage of users who voted for this feature: 58%
At present, if you expand a node, the TreeList loads all child nodes and then paginates them locally. We want to give you the option to load nodes individually. This feature will work with both the pager control and through virtual scrolling - Just like our DataGrid.

Scheduler

Adaptivity & UX Enhancements (v19.1)

Percentage of users who voted for this feature: 50%
We want to enhance our Scheduler to look and behave better on small screens (mobile devices). You can find some examples of this adaptive behavior in its ASP.NET counterpart here. If you’ve encountered specific usability issues with DevExtreme Scheduler, please share them with us.

Standalone Recurrence Editor (v19.1)

We have a recurrence editor that is a part of the Scheduler appointment form and can’t be used separately. We expect to ship the Recurrence editor as a standalone control in 2019.

Performance - Virtual Scrolling (v19.2 or later)

Percentage of users who voted for this feature: 50%
To help improve overall performance and usability, we hope to add a new virtual scrolling mode to our Scheduler widget. When enabled, only visible appointments will be rendered.

HTML/Markdown Editor

Multiline Toolbar (v19.1)

At present, Toolbar items are hidden within a dropdown menu on small screens. If the number of items is large (as it is in the HtmlEditor) the menu gets too long and becomes difficult to use. We’ll introduce one more adaptive mode that will create a second horizontal line of toolbar items instead of creating a dropdown menu.

Mentions Support: via @ (v19.1)

‘Mentions’ allow you select users or user groups by typing @ when composing rich text content. It’s widely used in team collaboration tools and project management applications.

Resize of Media Blocks (v19.1)

We’ll give you the ability to resize images and video blocks via the mouse.

Upload Images via Drag-and-Drop & Copy/Paste (v19.1 or v19.2)

You will be able to embed images as base64-formatted content or upload it to a web server via drag-and-drop or copy-paste actions and reference it as a URL.

Tables Support (v19.2)

We’ll give you the ability to insert and edit data tables.

Inline Formatting Toolbar (v19.2 or later)

You’ll be able to reveal an inline formatting toolbar when selecting content that requires formatting.

Data Editors

Additional Action Buttons (v19.1)

Percentage of users who voted for this feature: 83%
Extend built-in editor action buttons with custom actions. You can find some examples of this feature here.

Data Form

Dynamic Updates without a Full Re-render (v19.1)

Percentage of users who voted for this feature: 82%
We recently added partial update support to several DevExtreme widgets. This update can also be applied to the Form widget (for those who dynamically update forms and do not want to initiate a full form re-render).

TreeView

Node Reordering (v19.2)

Percentage of users who voted for this feature: 69%
Change parent-child relationships of TreeView nodes via drag-and-drop.

Cross-Component Nodes Drag-and-Drop (v19.2)

Percentage of users who voted for this feature: 69%
Move a node from one hierarchy to another using drag-and-drop.

New Dropdown Button Widget (v19.1)

A button with a built-in dropdown menu. You can find this kind of widget in many modern web applications.  Please, refer to the Bootstrap implementation for an example.

New Floating Button Widget (v19.1)

The concept of a Floating Button began with Material Design guidelines. We’ll support a simple Floating Button and a Floating Button with a pop-up menu.

New Drag-and-Drop Utilities (v19.1 or v19.2)

Percentage of users who voted for this feature: 78%
We want to create a drag-and-drop utilities library so you can construct custom drag-and-drop functionality outside of our UI widgets. One such usage scenario involves list sorting. We’ll make it extremely easy to implement such functionality.

New Kanban Board Widget (v19.2)

Percentage of users who voted for this feature: 67%
Kanban Board has become an essential control for task and project management in modern business web applications.

PivotGrid

Remote Data Paging (v19.1 or v19.2)

Percentage of users who voted for this feature: 63%
In 2019, we will give you the option to use partial aggregated data loading from a remote server. This new feature will work with both the Pivot Grid’s pager control (horizontal and vertical) and via virtual scrolling.

Data Visualization

Chart Annotations (v19.1)

Percentage of users who voted for this feature: 77%
Annotate your charts with custom labels.

Scrollbar as RangeSelector in Charts (v19.2)

Percentage of users who voted for this feature: 65%
Enhance a chart scrollbar to show the chart preview with range selection capability.  This feature can help visualize long time-based series with zooming/scrolling enabled.

Zooming in Polar Chart (v19.2)

Percentage of users who voted for this feature: 31%
Enable zoom for the Polar Chart. 

Based on feedback we’ve received to date, customization is crucial to many of you. We are going to dedicate significant resources to address limitations in this regard.

Legend Enhancements (v19.1 and v19.2)

Percentage of users who voted for this feature: 27%
We are considering the following legend features:
Expected in v19.1:
  • Add legend title
  • Custom item order
  • Item grouping
Expected in v19.1 or v19.2:
  • Add a legend to the Bar Gauge
Expected in v19.2 or later:
  • Custom item bullets
  • Hide legend items for empty series
  • Extract the legend as a standalone widget
  • Display a legend inside a Pie or Donut

Resolve Label Overlaps (v19.1 and v19.2)

Percentage of users who voted for this feature: 26%
In certain usage scenarios, our JavaScript Charting library can properly resolve label overlaps. We want to improve our product so that it can address the following use-cases:
Expected in v19.1:
  • Resolve labels overlaps in Funnel Chart.
  • Resolve label overlaps in Bar Gauge.
Expected in v19.2 or later:
  • Resolve cross-series label overlaps.
  • Resolve labels overlaps for constant lines and strips.

Other Chart/Gauge Enhancements (v19.1 and v19.2)

Expected in v19.1:
  • Word-wrap within legend items, labels and titles
  • Extend available Chart/Gauge events (context menu event, element click or double click)
  • Set the custom position of axis (enable quadrants)
  • Manage exported chart layout (layout by columns, etc.)
Expected in v19.1 or v19.2:
  • Display a tooltip only on point/series hover
  • Support custom points, labels, tooltip rendering using templates
  • Display custom text inside a Pie or Donut
  • Enable z-index for constant lines (to bring them behind or in front of other series)
  • Specify the size of a chart pane (for multi-pane charts).
Expected in v19.2 or later:
  • Support custom styles of Chart/Gauge elements (gradients, patterns, background images, etc.)
  • Display negative values for logarithmic scales
  • Use multiple colors for a single series (based on value/argument)
  • Display total value labels for stacked series
  • Animate zoom-in and zoom-out transition.

Data Export

Export to Excel Customization Enhancements (v19.1 and v19.2)

Expected in v19.1:
  • Custom headers/footers
Expected in v19.2:
  • Multi-sheet export
  • Export summaries as functions
Expected in v19.2 or later:
  • Images export

Export to PDF (v19.2 or later)

Percentage of users who voted for this feature: 48%
We plan to offer a PDF export option in our DataGrid and Pivot Grid.

Data Layer

OData v4 Support (v19.1)

Percentage of users who voted for this feature: 58%
OData v4 support enables remote grouping and summary operations within DevExtreme controls -  improving performance when using large datasets.

Data Validation (v19.2)

Asynchronous Validation

When a user submits a data form, you may need to execute asynchronous remote validation. For instance, you may want to check whether a user already exists in the database during registration. We’ll provide a straight-forward API for such usage scenarios.

Performance Enhancements

Virtual Scrolling and Lazy Loading Everywhere (v19.2)

Percentage of users who voted for this feature: 70%
The vast majority of DevExtreme users work with large datasets (from thousands to millions of records). These datasets are rendered as lists within our controls. Our DataGrid supports virtual scrolling with lazy data loading. We’d like to make this feature available everywhere. This feature can be applied to the following list of widgets:
  • TreeView
  • Scheduler
  • Lists
  • DropDowns & Lookups
  • Header filters in DataGrid, TreeList, PivotGrid
  • Column choosers in DataGrid, TreeList, PivotGrid

Improved Code Splitting (v19.2 or later)

Percentage of users who voted for this feature: 30%
The popular Code Splitting technique helps web developers improve app performance. To help maximize the benefits associated with Code Splitting, we hope to organize DevExtreme into smaller/functionality specific modules (for instance, we want to give you the option to use a read-only Data Grid without bundling any of its data editing features).
We also want to make our CSS more modular. You’ll be able to bundle only those styles/features being used in your app.

Themes

Element and Font Size Customization (v19.1)

Percentage of users who voted for this feature: 78%
DevExtreme includes a ‘compact’ and ‘regular’ theme sets. Our users find the ‘compact’ themes very useful when generating a highly dense, data-intensive UI. We will introduce a compact Material UI theme and give you the ability to customize theme element and font size.

Chart Themes (v19.2)

Percentage of users who voted for this feature: 70%
We will update our Charting library so you can customize its appearance via the DevExtreme Theme Builder.

Angular

Visual Studio Project Templates with Responsive Application Layouts (v19.1)

Percentage of users who voted for this feature: 63%
In our v18.2 release cycle, we introduced a Drawer component and a set of responsive application layouts for Angular. We are going to integrate them into new Visual Studio project templates.

CRUD Forms Generation in Visual Studio Scaffolder (v19.2)

Percentage of users who voted for this feature: 63%
We recently introduced the scaffolding necessary to enable editing for CRUD list views (based on our DataGrid and TreeList controls). If you need to edit data objects with numerous properties, you may want to use a separate data Form instead of inline editing within the list view. We will extend the capabilities of our design time tools with a new Data Form Scaffolder.

Vue

Responsive Application Layout Templates & CLI Tools (v19.1 or v19.2)

Percentage of users who voted for this feature: 52%
Our Vue components were released a few weeks ago. DevExtreme Vue users have asked that we introduce layout templates much like those we ship with our Angular product line. 

React

Responsive Application Layout Templates & CLI Tools (v19.1)

Percentage of users who voted for this feature: 52%
We recently introduced a set of Angular CLI tools and application layout templates. We will introduce the same capabilities for Devextreme-react.

Native React Grid

Inline Cell Editing (v19.1)

Percentage of users who voted for this feature: 85%
Improve cell editing by placing a cell into edit mode when clicked (without the need to press the edit button in the edit column). Changes can be committed when the cell loses focus or via an explicit action (such as a ‘save’ button click).

Virtual Scrolling with Remote Data: Lazy-loading (v19.1)

Percentage of users who voted for this feature: 84%
At present, virtual scrolling only works with local data. We want to extend this feature and make virtual scrolling available when using remote data. Once implemented, a visible data range will be requested and rendered from the server.

Export to Excel (v19.2)

Percentage of users who voted for this feature: 81%
Export the contents of the DevExtreme React Grid to Excel (including options to configure formatting).

Scroll To Row (v19.2)

Percentage of users who voted for this feature: 76%
Programmatically scroll to a specified row when using virtual scroll mode.

List View (adaptive mode)

Percentage of users who voted for this feature: 80%
Render/display records as a traditional list with a custom, responsive layout (for improved usability on mobile devices).

Native React Scheduler

Drag-and-Drop Support (v19.1)

Allow users to modify appointment start/end date and time via drag-and-drop.

Recurring Appointments (v19.1)

Allow users to specify recurrence patterns for an appointment.

Resources & Grouping (v19.2)

Assign resources to appointments and visualize appointments grouped by resources.

Timelines (v19.2)

This popular scheduler view is a long scrollable time range divided by smaller time intervals. You can find some examples here.

Bootstrap Rendering (v19.2)

At present, native React Scheduler supports only Material-UI rendering. We want to extend it with Twitter Bootstrap 4 rendering. You will be able to apply Bootstrap themes with ease.

Native React Chart

Export Chart to Image/PDF (v19.1)

Percentage of users who voted for this feature: 20%

Scrolling & Zooming (v19.1)

We expect to introduce zoom and scroll to our Chart widget.
Percentage of users who voted for this feature: 19%

Transitions on Update (v19.1 or v19.2)

Percentage of users who voted for this feature: 11%
When a chart data source is updated, a transition can be applied to the chart. This makes it more attractive and improves user experience.

Point Aggregation (v19.2)

Percentage of users who voted for this feature: 10%
Point aggregation allows you to visualize more data within a smaller range. You’ll be able to apply different aggregate functions such as count, min, max, and average.

Crosshair (v19.2)

Percentage of users who voted for this feature: 9%
The crosshair pointer allows a user to determine the argument and the value of a specific point more precisely.

Range Bar Series (v19.2 or later)

Percentage of users who voted for this feature: 9%
This type of series visualizes a value range with a single argument. Data is displayed as sets of rectangular bars beginning at a specified start value and ending at a specified end value.

Range Area Series (v19.2 or later)

Percentage of users who voted for this feature: 8%
Range area series can be used to display value ranges corresponding to specified arguments. Data is displayed as a colored region between the line that joins the beginning and the line that joins the end series points.
Should you have any questions about this roadmap feel free to email us at info@devexpress.com.
The information contained within this blog post details our current/projected development plans. Please note that this information is being shared for INFORMATIONAL PURPOSES ONLY and does not represent a binding commitment on the part of Developer Express Inc. This roadmap and the features/products listed within it are subject to change. You should not rely on or use this information to help make a purchase decision about Developer Express Inc products.

 
18 comment(s)
SistemasCaltic
SistemasCaltic

Hi! great, the export to excel of the tree view is included?

22 January, 2019
Alvis Kums
Alvis Kums

Excel-Like Editing Mode  - Would love to see that in Winforms (if that means, copy on multiple cells by expanding selection)

22 January, 2019
Brad Baker - MMC
Brad Baker - MMC

Why are you dedicating resources to items that have less than 50% user support?

EX: Based on feedback we’ve received to date, customization is crucial to many of you. We are going to dedicate significant resources to address limitations in this regard.

Im not sure if thats for the Polar Chart, but the zoom feature has 30% vote, but youre still saying it will be released in 19.1

Whats the point of voting on things if youre just going to implement them anyways,  Looks like most of the React Chart stuff no one is using (Of those that voted, but we cant make conclusions since we dont have vote counts).

Also pretty sad that things like code splitting werent higher since it helps with sending smaller bundles to end users, but maybe not all users are that technical to split out only what they need per page because spending 5MB instead of 30kb is always good :) (Yes, I know in theory it would be cached after initial pull, but we dont use all the DE components so stripping them out is useful)

22 January, 2019
Tomas Rimkus
Tomas Rimkus

Some of the things you put under Treeview category in the article should be on their own, ie "New Floating Button Widget" & "New Drag-and-Drop Utilities".

23 January, 2019
Andrew Pratt
Andrew Pratt

How about we finally get the ability to reload an individual node in the TreeView control. This was first raised 3 years ago now and is a critical missing feature of this control that makes it useless for any serious dynamic data usage like representing folders etc that can be edited. It is incredibly ugly having to refresh the tree and very difficult to re-open all the expanded nodes every time a (node) folder is added, renamed or removed by a user. PLEASE make this a priority!!!

23 January, 2019
Alex B (DevExpress)
Alex B (DevExpress)

Hi all,

Thank you everyone for your feedback.

@SistemasCaltic

> Hi! great, the export to excel of the tree view is included?

We are unlikely to fit this feature into our 2019 scheduler, but we hope to implement it once we are done with the planned stuff.

@Brad Baker - MMC

Brad - in most cases, the roadmap was based on a plurality of votes. Very few items received a majority. Like any "election," we were bound to frustrate some of our users. We did our best to frame our survey questions clearly and we have to honor the decisions made by our user base. If you would like to talk to us about your concerns, please feel free to email...

@Tomas Rimkus

> Some of the things you put under Treeview category in the article should be on their own, ie "New Floating Button Widget" & "New Drag-and-Drop Utilities".

Fixed. Thank you :)

@Andrew Pratt

Andrew, we have hundreds or even thousands of requests to implement some specific use-case. I really want to implement all of them as much as you do, but we are limited in time and resources. Of course, some minor enhancements will be done besides the major feature list. We'll consider if your particular request can be addressed this year. We have plans to improve partial updates in our components.

23 January, 2019
Fabiano Castro 2
Fabiano Castro 2

Please

Action Buttons

Dropdown Button

will help me so much 😍

23 January, 2019
CLCS Houston
CLCS Houston

would be nice to see splitters and docking controls. Hunting for free alternatives is not fun, especially docking ones

23 January, 2019
Mohsen Abo-Ghaly
Mohsen Abo-Ghaly

Hello,

And what about DevExtreme report widget?

Thanks

23 January, 2019
Alex B (DevExpress)
Alex B (DevExpress)

@CLCS Houston

> would be nice to see splitters and docking controls. Hunting for free alternatives is not fun, especially docking ones

You are right, so I would say splitters and docking are the next big part of new JS controls we plan to introduce. The main reason why they are not included in the 2019 Roadmap is mentioned in your question. These controls don't have a lot of visual parts. They are more about UI behavior. Since there are lots of free alternatives, it can be at least a solution for a while.

@Mohsen Abo-Ghaly

> And what about DevExtreme report widget?

We already provide Reporting solutions available for ASP.NET MVC, ASP.NET Core, Angular, and React. Please refer to our documentation. If you need any further assistance, feel free to create a ticket in our Support Center.

25 January, 2019
Charles Matvchuk
Charles Matvchuk

Without a complete DevExtreme Control set, our ASP.Net Core MVC development is being severely hampered, we are turning to other control manufacturers that have a more complete line as well as rolling our own and looking for other alternatives.  There needs to be solid push by DevExpress or developers as we start focusing heavy on ASP.Net Core will have to migrate away, which is not what we want to do.

25 January, 2019
Alex B (DevExpress)
Alex B (DevExpress)

@CharlesM

We are pushing as hard as we can. If you have specific requests that we've not included in ASP.NET Core roadmap, please email support@devexpress.com. We will happily follow up.

29 January, 2019
Rama Vavilala
Rama Vavilala

Any ideas when the beta will be available. We are in a stage where we need to decide quickly on what control we need to use for our project. We are already using DevExpress controls for our desktop application and we will prefer to use DevExtreme. The only reason for us not to use devextreme is the excel style grid editing.

7 February, 2019
Alex B (DevExpress)
Alex B (DevExpress)

@Rama Vavilala

We expect to release Beta at the end of April. There also will be alpha pre-releases. We'll announce them on this discussion page.

I would also suggest that you review the feature description and comments. Please make sure that the scenarios you need are in our plans for v19.1. Feel free to leave comments on your specific requirements.

7 February, 2019
Customer63474
Customer63474

I wonder if you are planning to add this widget for future plans:

reactnativeexample.com/a-simple-react-native-implementation-of-step-indicator-widget-compatible

It would be a good recruit! ;)

Best regards.

15 February, 2019
Matthieu Penant
Matthieu Penant

Would be nice to have a component like Gridster: tiberiuzuld.github.io/angular-gridster2 . Devexpress Dashboard is really good as complete solution, but it would be nice to be able to create our own dashboard based on DevExtreme Components.

28 February, 2019
Moritz B.
Moritz B.

Very much looking forward to a more mobile optimized scheduler experience,

but i would also share my experience for multi-user environments:

-week/workweek showing all appointments of all users is the most important view imho, which means it should be as compact and usable as possible (not showing all the empty time spaces, but instead just show appointments in a single container for each day and resource/user)

-for mobile UI i also always have the trouble that including the scheduler, menu bars/frames take up too much space. I think it would be a nice idea to hide the inbuild scheduler menu bar (switch views, switch dates, etc.) to a single button or auto-hide side panel

-since mobile optimization is a tragedy in itself .. older phones even worse resolutions, older people using insane zoom ratios, etc.. it would be nice to have an opt-out and simple go for desktop resolution and allow users to zoom freely

12 May, 2019
Alex B (DevExpress)
Alex B (DevExpress)

Thank you, everyone, for your feedback.

@Customer63474 @Matthieu Penant

The widgets you've mentioned are in our backlog, but not in near plans.

@Moritz

We'll take your valuable feedback into consideration for further adaptivity improvements in our Scheduler widget.

13 May, 2019

Please login or register to post comments.