Roadmap

Last updated: 18-APRIL-2018

Themes

Material Design

We will release a Material Design theme based on Google Guidelines and make it customizable via the DevExtreme Theme Builder.

Boostrap 4 Support

As you know, Twitter Bootstrap is a mainstream front-end development framework. We will update our JavaScript product suite so you can import colors into DevExtreme themes (from existing Bootstrap 4 themes). We will also update our products to make certain that our components are properly rendered when using the default Bootstrap 4 theme.

Layout Templates

Responsive Application Layout Templates for Angular and ASP.NET

We’ll ship ready-to-use application layout templates based upon DevExtreme responsive components. We'll also utilize Twitter Bootstrap where required. These templates will address the needs of LOB application developers.

Responsive Application Layout Templates | DevExpress

Data Grid

Improved Performance

We expect to improve the scrolling performance of the DevExtreme Data Grid when used to display many columns and rows (or when hiding/displaying columns).

Integrated Filter Builder

We will extend the filtering capabilities of the DevExtreme Data Grid with a fully integrated Filter Builder. With it, users can construct advanced filters via its intuitive UX.

DataGrid - Intergated Filter Builder | DevExpress

Improved Keyboard Navigation

This feature will be most useful for those who display Master-Detail relationships within the DevExtreme data Grid (when you need to navigate through records and see details in a side-by-side view). Once implemented, you will be able to select a row with a mouse or keyboard (to navigate through rows).

DataGrid - Improved Keyboard Navigation | DevExpress

Tree List

Record Paging

We will add record paging support to the DevExtreme TreeList.

TreeList - Record Paging | DevExpress

State Management

We will give you the ability to persist the current state of the DevExtreme TreeList and restore it as needed. This feature will apply to all major UI elements.

Data Export

In our second major release of 2018, we will give you the ability to export the contents of your TreeList control (export all or selected records) to XLSX files.

TreeList - Data Export | DevExpress

Pivot Grid

Remote Paging

We will extend the PivotGrid’s data layer so it can request only the data it needs for display within a page. This will improve performance for complex usage scenarios (lots of aggregated data).

Scheduler

Group orientation

We will give you additional control over grouping within the DevExtreme Scheduler. One of the improvements is the capability to set the vertical or horizontal orientation for scheduler groups.

Scheduler - Improved Grouping | DevExpress

Group by Date

Another planned improvement is the capability to group appointments by date.

Scheduler - Improved Grouping | DevExpress

Improved Recurrence Editor

We will extend the capabilities of our Recurrence Editor so that it can be customized and able to edit recurrence exceptions.

Context Menu

We will add support for a context (popup) menu and provide a straightforward API for adding and configuring the menu itself.

TreeList - Record Paging | DevExpress

Charting

Theme Customization

We will update our Charting library so you can customize its appearance via the DevExtreme Theme Builder.

Palette Extension Modes

We will allow extending the base palette color set by introducing the new paletteExtensionMode option for the Chart component. This option specifies an algorithm that calculates the extra colors for a chart and can be set to the alternate, extrapolate or blend values.

Bar Width and Spacing Improvements

The following chart customizations will be possible:

  • Assigning different bar widths to bar series within a chart
  • Adjusting the spacing between bar groups (two neighboring arguments)
  • Specify the fixed bar width
  • Specify the fixed bar group width

Updating Data

Based on feedback, we will give you the ability to specify independent data sources for each chart series. We expect to support the following data update scenarios:

  • Append data to the end
  • Append and shift
  • Redraw from scratch

We will also make certain to include uninterrupted navigation during data updates (you can zoom, scroll and explore a chart while it is updated in the background) and give you the ability to jump to your new data and view it in real-time.

Client-Side Data Aggregation

Our JavaScript Charting library will support several widely used data aggregation modes including: Avg/Sum/Range/OHLC/Count/Min/Max.

Charting - Client-Side Data Aggregation | DevExpress

Zoom/Scroll Enhancements

In our second release of 2018, we will refine our JavaScript Charting library to support the following:

  • Value-axis Zooming: You will be able to zoom a chart by its Value-axis.
  • Area Zooming by Mouse Selection: You will be able to select the desired area using your mouse (or via a gesture on touch devices).
  • Interactive Zooming & Scrolling: At present, a chart is updated only when you complete zooming/scrolling operations. We will improve our Charting library to support continuous updates during zooming/scrolling operations.
  • Save zoom level on data updates.
  • Scroll/Zoom to areas without data.

Charting - Zoom/Scroll Enhancements | DevExpress

UI Widgets

Formatted Text Editor (HTML Editor)

We expect to ship our JavaScript Formatted Text Editor in our second major release of 2018. This UI widget will allow you to change text styles, create lists and add hyperlinks and images. We will support HTML and Markdown target formats. Basic features will be available out-of-the-box and extension will be possible via the widget’s public API.

Formatted Text Editor (HTML Editor) | DevExpress

Date Box Masked Input

Last year, we added masked input support to our Number Box widget. In our second major release of 2018, we will extend this functionality to our Date Box widget. This will allow you to control user input as needed.

UI Widgets - DateBox Masked Input | DevExpress

Filter Builder ‘Between’ and Custom Operations

We will include the between operation as a built-in component that is available for all date, datetime and number fields by default.

UI Widgets - Filter Builder Between Operation | DevExpress

Also, you will be able to extend FilterBuilder with custom filter operations. A 'custom filter operation' is a high-level operation that can be translated into a set of primitive operations the DevExtreme data layer supports. You will be able to use the new customOperations option to enable your custom operations within a particular FilterBuilder.

UI Widgets - Filter Builder Custom Operations | DevExpress

Realtime UI Updates for Data Grid, Tree List, Scheduler and Charts

We will deliver a solution to address the needs of those who are building apps that must display/render real-time data. Ultimately, we want to integrate with your SignalR server (or any other notification service) more seamlessly. There are two groups of usage scenarios we expect to implement:

  • Real-time updates (static read-only widget updates)
  • Team collaboration (simultaneous data editing by multiple people)

Data Export Performance and Customization Improvements

We will extend the capabilities of our data export engine so you can:

  • Embed custom titles and footers in the exported document
  • Control the appearance of exported data (font, background color, etc.)

We will also refactor code so as to improve performance when exporting a large amount of data.

Visual Studio Tools

CRUD API Scaffolding in VS

Modern web applications are often implemented as a Single Page Application (SPA) using client-side libraries/frameworks. An SPA usually communicates with a server via REST API with Create/Read/Update/Delete (CRUD) actions. If you are using DevExtreme controls with ASP.NET MVC, they still require a data service for data binding, which must be implemented for each data entity within your application. This routine work can be automated.

We want to simplify things by scaffolding ASP.NET MVC/Core API Controllers with CRUD actions that can be consumed by any client-side application including web and native mobile apps. We'll integrate DevExtreme ASP.NET server-side extensions into the API controllers and seamlessly enable all key server-side features (such as sorting, filtering, grouping, and so on).

CRUD Razor View Scaffolding in VS

We’ll introduce a new Scaffolded Item type for Visual Studio. The workflow will be similar to the default behavior found in Visual Studio (see https://elanderson.net/2017/12/asp-net-core-basics-razor-pages/).

We are also going to introduce additional configuration options for generated content. You'll be able to choose whether the entity list should be displayed via the Data Grid, Scheduler or other DevExpress JavaScript controls. Some basic control configuration (such as inplace data editing) might also be available. You'll be able to optionally scaffold list view, detail view, edit (form) view and delete view for the specified entity/controller.

Angular

Server Side Rendering (SSR)

DevExtreme Angular components will use the Angular Renderer for DOM manipulations – just like native Angular components. This update will allow you to use our components within Angular Universal apps (rendered on both the client and server-side).

React: Native Components and Wrappers

React Grid TreeView Mode

We will update the DevExtreme React Grid with a new TreeView mode. With it, you’ll be able to display hierarchical data (a tree-like data source, a plain list with a parent-id reference or any custom structure with manual transformation into a tree) and leverage built-in features including sorting, filtering, data editing and record selection.

React Grid - TreeView Mode | DevExpress

React Grid Column Bands

We will introduce a new bands plugin for the DevExtreme React Grid so you can better organize data grid contents on your webpage.

React Grid - Column Bands | DevExpress

React Grid Fixed Columns/Rows

We will extend the capabilities of our VirtualTable plugin for the DevExtreme React Grid. This will allow you to fix individual columns to either the left or the right side of the grid.

React Grid - Column Bands | DevExpress

React Grid Advanced Data Filtering

We will introduce a number of new plugins for our React Grid to help improve its filtering capabilities.

React Grid - Advanced Data Filtering | DevExpress

Native React Scheduler Component

In our second release of 2018, we’ll ship the first iteration of our native React Scheduler/Calendar control. Features will include the following:

  • Day, Week, Month View
  • Appointment/Event grouping by resources
  • Date Navigator
  • Draggable/resizable appointments
  • Recurring appointment support

Native React Scheduler Component | DevExpress

Native React Chart Component

Much like our React Data Grid implementation, our React Chart component will be composable, extensible and plugin-based. We will ship the following chart types in the first major release of 2018 as a CTP:

  • Bar chart
  • Line (Curves) chart
  • Area chart
  • Scatter chart
  • Pie chart
  • Stacked chart

Native React Chart Component | DevExpress

DevExtreme Widget Wrappers

As you may know, we released our native React Data Grid late last year and are currently building native Scheduler/Calendar and Chart widgets for React. Though we expect to deliver additional native React products, we felt that it was important to offer an intermediate solution to those of you who have chosen React as your preferred platform.

As such, we will wrap all existing DevExtreme JavaScript widgets into React components.

Vue: Native Components and Wrappers

Native Vue Data Grid

Our native Vue Data Grid will mirror many of the features found in its React counterpart.

Native Vue Scheduler/Calendar

Our native Vue Scheduler component will mirror many of the features found in its React counterpart.

Native Vue Chart Component

Our native Vue Charting library will mirror many of the features found in its React counterpart.

DevExtreme Widget Wrappers

We will wrap all existing DevExtreme widgets into Vue components.