Latest Ext JS 7.8 is now available. Learn more

How To Create A Stunning Mobile App Using Ext JS UI Components

February 22, 2023 741 Views

With the increasing use of mobile devices, the trend of mobile application development has increased significantly in the past few years. For example, businesses worldwide are creating mobile apps to build brand loyalty, improve customer relationships, and convert information to their customers. However, creating a mobile app from scratch can be challenging and time-consuming. For example, mobile app development often involves learning new technologies and programming languages. Additionally, you need to ensure that your app works on different platforms. This is where you need a powerful UI component library like Ext JS to build high-performance mobile apps quickly. Ext JS offers a wide range of pre-built UI components for your apps and enables you to build cross-platform mobile apps.

In this article, we’ll show you how to build a mobile app with Sencha Ext JS quickly and easily.

What Is Ext JS?

Sencha Ext JS is a complete JavaScript framework that enables you to build data-intensive, enterprise-grade web and mobile apps. It allows you to create high-performance and cross-platform apps for any modern device. This means the apps you create with Ext JS work flawlessly on various platforms. The powerful frameworks offer more than 140 pre-built UI components for your apps. These include input elements or input controls like buttons, checkboxes, radio buttons, text fields, etc., navigational components like icons and sliders, informational components like tooltips and progress bars, and many more. Additionally, it offers powerful grids for creating data-intensive apps. Users can also utilize helpful extensions from the Sencha community.

The Ext JS ARIA package enables you to add accessibility support to your apps. There are also several supporting tools for Ext JS, such as Sencha Cmd, Sencha Architect, Sencha Test, Sencha Stencils, and Sencha Themer.

Why Should I Use Ext JS UI Components To Create My Mobile App?

Ext JS offers all the basic UI elements and advanced components you need to create an efficient user interface and UI design. All these responsive and high-performance components are designed to work together flawlessly on any mobile app. Ext JS component library also has a layout manager that allows you to manage and control the display of data and components across different devices, screen sizes, and browsers. Additionally, the responsive config system allows the app components to adapt efficiently to a particular device orientation, such as landscape or portrait.

Here are some of the most common UI elements offered by Ext JS:


Buttons are basic UI components that allow users to perform different actions on a website, web, or mobile app. Buttons are typically designed using text and icons.

Date Picker

Ext JS UI components - Date picker

A date/month picker enables users to select a date and month. By using the date picker, we get consistently formatted information.


Ext JS UI components - Grid component

Data grids are an essential part of a data-driven mobile web app, such as an enterprise-grade app. These grids allow us to display data in an organized tabular format. Ext JS offers a wide range of grid features. For example, we can create grouped grids, add row numbers, add a group header, sort grids in ascending or descending order, and more.

Drop-down List

Ext JS UI components - Dropdown list

Drop-down lists UI components enable users to choose one item at a time from the list. These lists are compact and save space. Ext JS allows you to customize the text in the dropdown menu and text fields to help users understand the necessary action.

Search Field

Users can use a search field or search box to enter text, such as a phase or keyword, and get the most relevant results. For example, if you have a search box in your e-Commerce mobile app, users can search desired products using specific keywords.

Ext JS offers many other elements, such as forms, progress bars, sliders, tabs, menus, and more.

What Are The Other Key Features Of Ext JS?

Back-end Agnostic Data Package

Ext JS has a powerful data package that decouples the UI components from the data layer. The data package helps with the collection of client-side data using highly functional models. It also offers features like sorting and filtering. Ext JS is also capable of accessing data from any back-end source.


In addition to high-performance UI components, Sencha offers multiple built-in themes for your apps. You can even customize the themes as per your app’s design.


Ext JS offers a comprehensive set of flexible layouts. These layouts ensure the proper positioning and sizing of all components on different devices, screen sizes, and browsers.


With Ext JS, you can export data from Pivot Grid or Standard Grid to several common formats, such as XSLX, HTML, Excel XML, and CSV.

Charts and D3

Stacked column Chart created using Ext JS

Charts and Data-Driven Documents package (D3) visualizations allow you to represent data visually and are an essential part of data-driven apps. Ext JS allows you to create different types of dynamic and static charts for your web and mobile apps. These include bar, area, line pie, column charts, and many other charts and graphs. Ext JS also enables you to add D3 visualizations, such as heatmaps, treemaps, and sunbursts, to your apps.

How To Create A Mobile App With Ext JS?

Step 1

First, we have to install packages from npm. Ext JS provides 30-day trial packages that users can install from public npm. You can use the command below to install the latest version of Ext JS:

$ npm install -g @sencha/ext-gen

If you’re an active user, Ext JS and all related packages will be hosted on the private npm registry of Sencha. You can use the following commands to log in to the registry and install npm:


$ npm login --registry= --scope=@sencha

$ npm install -g @sencha/ext-gen


Step 2

Next, we’ll generate a simple app (two-view) that consists of a home page and a grid:


ext-gen app -a -t moderndesktop -n ModernApp


Step 3

Once our app is generated, we can change to that directory:


cd ./modern-app

To explore your app, use the following command:


npm start


Adding More UI Components To Your App

You can add any UI component to your app. Here, we’ll show you how to add a simple horizontal carousel to your app:


You can also find the code here.


Ext.create('Ext.Carousel', {

fullscreen: true,

defaults: {

styleHtmlContent: true


items: [


html : 'Item 1',

style: 'background-color: #5E99CC'



html : 'Item 2',

style: 'background-color: #759E60'



html : 'Item 3'





The code above will generate the following Carousel:

A carousel created using Ext JS

What Are The Benefits Of Using Ext JS To Create Your Mobile Apps?

Some of the key benefits of using Ext JS for creating your mobile apps include:

Fast Development Process

When you use Ext JS to create your mobile web apps, you can utilize 140+ ready-to-use UI components. All of the components are designed to function flawlessly together. In other words, you don’t have to code these components from scratch. As a result, Ext JS speeds up the web and mobile app development process and enables developers to save time and costs.

Cross-Platform And Cross-Browser Functionality

Cross-platform development means you can create an app for multiple platforms using a single codebase. Similarly, cross-browser means your app can work on various browsers. Ext JS allows you to develop cross-platform mobile apps and deploy them on multiple platforms. It also has cross-browser support. Ext JS apps work on all major browsers, such as Safari 6+, Chrome, Opera 12+, Firefox, and more.

Hence, Ext JS helps save time, costs, and resources. Developers can spend valuable time adding features to their apps instead of creating UI designs for each platform and browser separately. As HTML and CSS standards have evolved, Ext JS has also been updated to support these standards.

Sencha’s Customer Support

Ext JS has a great customer support team that responds instantly to queries. If you have a query or issue, you can post it on Sencha’s forum, and your question will be answered in no time. You can send us an email, and our team will provide the working solution as soon as possible.

Frequently Asked Questions (FAQs)

What are UI components?

UI components are the building blocks or key elements of a user interface. Some examples of user interface elements or UI components include buttons, message boxes, search fields, tab bars, progress bars, time pickers, and more.

How many UI components are there?

There are many different types of UI components, such as scrollbars, checkboxes, buttons, menu items, sliders, carousels, and more. You can use these UI elements depending on the requirements of your app.

What are the main elements of a user interface?

User interface elements are divided into four categories: input controls, navigation components, informational components, and containers.

Start using Sencha Ext JS today and build functional mobile apps quickly!