1. Home
  2. Getting Started
  3. Get Started: UX Creator App

Get Started: UX Creator App

Overview

The UX Creator allows for the creation of Functionality, Forms, and Fields – these three components make up the user experience.

Functionality

What is a Functionality?

A Functionality is a container that holds a group of Form Definitions. A product can be composed of one or multiple Functionalities, based on how you decide to organize the product’s Form Definitions.

Graphic of the functionality, form definition, field definition hierarchy

Why do we use Functionality containers?

Functionality containers allow you to seamlessly move parts of your application between environments by using the Export and Import features. When you Export a Functionality, you download a snapshot of the entire Functionality configuration at that moment in time as an XML document. This enables you to Import this Functionality to another environment such as development, QA, or production – ensuring that it is imported in the exact same state as when it was exported.

The Export and Import features of Functionality containers also serve as a powerful version control mechanism. If significant changes or errors occur, you can easily revert to a previous version by re-importing the exported XML document. This ensures that you can quickly restore a stable and fully functional version of the application.

Import/Export a Functionality

Importing a functionality is done at the UX Creator level, and exporting a functionality is done at the Functionality level.

Graphic of the Import/Export functionality

To Import a Functionality, navigate to the UX Creator, click on the 3 dots in the upper right corner and select ‘Import Child’. Select the Functionality XML file you previously exported to Import the Functionality to this environment.

Warning: When importing a Functionality, it will override the existing configuration of this Functionality by deleting the existing configuration, then loading the new configuration.

To Export a functionality, navigate to the Functionality to export, click on the 3 dots in the upper right corner and click ‘Export’. This will generate an XML file capturing the current state of the Functionality.

It is important to note that when you Export/Import a Functionality, only the Functionality’s configuration is Exported/Imported, not the user data records. For example, if you configure a Functionality to hold a set of Customer records, only the configuration that dictates how the Customer records are displayed and function will be affected. The Customer records themselves will remain untouched.

Functionality User Roles

In Phase 1, you defined a set or User Roles that would use your product. These roles have been set as the Functionality’s default roles.

By default, External User Roles will also have an Admin version of the role. Admin roles have the ability to add users to their portal, remove users from their portal, and manage the applications that the added users can see.

As you go through the process of enriching and expanding your user experience, you may find that you need to add additional user roles to differentiate the user experience for a specific role. For example: you may have initially created a Customer role, and now realize that your will have 2 different types of Customers that will each require a different user experience: Free Customers and Paid Customers. In a case like this, you can add additional roles using the “Define the roles of the users that will have access to this functionality” table on the Functionality’s Overview tab.

Create a Functionality

Upon completing Phase 1 of the product creation journey, an initial Functionality is scaffolded for your product, based on the Concepts and User Roles you provided. This Functionality contains the Form Definitions that constitute the core of your product, and can be accessed by navigating to the UX Creator. Additional Functionalities can also be created from this page by clicking “Add New Functionality”.

To learn more about Functionality, see the Functionality category.

Forms

What is a Form?

A Form is what you use to configure your product’s functionality.

There are five types of Forms:

  • Concept
  • Application
  • Portal
  • Wizard
  • External

Concept Form

A Concept is a Form Definition that defines the structure of a record that will be stored in the database. Every record in the database has a Concept Form Definition.

Application Form

Applications are the user’s entry points to different Forms within the workspace – they allow users to quickly access to specified content. The most common use for an Application is to display a list of Concepts that the user has access to. For example: if a Customer Support Manager wants to have quick access to a list of all Customers in their navigation menu, they would require a Customer Application.

Applications can also be used for quick access to other types of content such as static content (for example: a welcome page), a dashboard (for example: Power BI dashboard), and other types content.

Portal Form

Portals are only applicable to External User Roles.

If you have defined an External User Role, three Form Definitions will be created – a Concept, an Application, and a Portal.

As described above, the Concept will be used to define the structure of the record, and the Application will be used for internal Admin users to view a list of all the Concept records.

The Portal will be used to define the user experience for the External user. In our example above, this would be used to define the user experience for the Customer. What will a Customer see and be able to do? This is where you will define this functionality.

A Form can be created by selecting a Functionality, navigating to the Forms tab, and clicking “Add New Form Definition”.

Wizard Form

A Wizard is a pop-up window that can be used to display information in a particular sequence and/or guide the user through a step-by-step process.

Diagram of the different types of Form Definitions in relation to each other

External Form

An External Form Definition is a way of using dynamic page generation to render content from a 3rd party app. External Form Definitions are an advanced feature – please speak to our support team at support@greatideaz.com if you are interested in implementing this type of Form Definition.

Create a Form

Based on the Custom Concepts you defined in Phase 1, we have scaffolded a set of Form Definitions in the UX Creator. Additionally, based on the User Roles you defined in Phase 1, we have scaffolded a set of Form Definitions in the UX Creator for External Users. These Forms can be accessed by navigating to the UX Creator, selecting the initial Functionality created, and navigating to the Forms tab. Additional Forms can also be created from this page by clicking “Add New Form Definition”.

To learn more about Forms, see the Forms category.

Fields

What is a Field?

Field Definitions are the components which make up the content on the Form.

Conditions can be used to control when certain Fields and content appear based on the State of the record, User Roles assigned to the user, other field values, or on a custom action defined in the Conditions table on the Security Tab. This allows for real time changes to the Form based on user input.

Field definitions can be configured in a layered manner. For example: you can layer multiple String Fields over a Readonly Content Field containing a background image.

Note: It is not recommended to layer Fields or place multiple Fields in the same location (the same grid row/column on the same Tab) if they both require the user to interact with them since the user won’t be able to access Fields underneath other Fields. You may use conditions to place fields in the same relative position on the Form, provided only one Field is ever visible in that position at a time.

Field Types

There are more than 40 distinct field types designed to accommodate diverse UX needs. For a comprehensive list, refer to the Fields category.

Create a Field

To create a Field on a Form, select the Form, navigate to the Fields tab, and click on “Add New Field Definition”.

To learn more about Fields, see the Fields category.

Updated on August 2, 2024

Was this article helpful?

Related Articles

Need Support?
Can’t find the answer you’re looking for?
Contact Support