Mobile App Features

So simple that it’s simply powerful, with some features no other generic tool can provide, and no user guide needed to use it effectively.

Editable Table Grids

Editable Table Grids

Create fully controllable Excel-like table grids that work even on smartphones

Linked Fields (coming soon)

Linked Fields

Mark a field NA, True, False, etc, and all fields linked to this one will initially take the same value

Dual Columns View

Dual Columns View

Automatically switches from 2 columns in landscape mode to 1 column in portrait mode

Workflow Driven Subforms

Workflow Driven Subforms

Tap on a checkbox to create a subform that pre-populates with its parent form header details

Draw on Top of Image

Draw on Top of Image

Draw on top of a picture using your finger to point out things

Assign Forms (coming soon)

Assign Forms

Assign/schedule forms to appear for specific people on specific dates and geolocations.

Collapsible Form Sections

Collapsible Form Sections

Tap on a header's N/A checkbox to collapse an entire section and over-ride validations.

Geolocation Data Capture

Geolocation Data Capture

System automatically captures the
lat/long of the location where the form
was initiated

Form % Complete

Form % Complete

For commissioning projects, system automatically calculates partial % complete at the form and device level.

Use table grids with ease, even on tiny smartphones


Cut field data collection time by using table grids, something no other software tool can do very well or at all

Display columns and rows similar to an Excel table grid

Tap a row to access that row

Columns can contain any type of control, including listboxes, checkboxes, even signature fields

On load, default a specific value for a specific column or even just a single cell

Allow a user to add additional rows or not, or clone a row

Automatically wraps long text to another line

Even works on smartphones in portrait mode

Tap on a checkbox to create a subform

We call this “Workflow-driven Subforms”


Initiate a related subform by simply tapping on a checkbox

Automatically pre-populates the subform with header information from the parent form

Subform can be automatically routed with it’s parent form

Avoid tedious “N/A” data entry fields by collapsing an entire form section

Tap on a section header’s “NA” checkbox to collapse the entire section

All required fields in the collapsed section are no longer required when the section header is collapsed

This feature eliminates a user from having to select a value from required fields that are not applicable in a particular situation, saving valuable field time and frustration

Collapsible form sections is an optional feature that can be assigned to any section of a form

Link related fields and save a bunch of taps and data entry time


Mark a parent field with a value, and all fields linked to that field will also initially take the same value as its parent field

Linked fields can be changed by the user to some other value after initial value is taken from the parent field

This feature eliminates a user from having to mark a bunch of similar fields with the same value. Very useful when a user has to mark a bunch of fields as “N/A”.

Draw on top of images to point out things


Draw on top of a picture using your finger

Simple draw layer controls

  • Thin or thick line

  • Red, yellow, or black color

  • Erase using your finger, or erase all

The original image is stored untouched, while a copy of the image is merged with the draw layer (so that you can retrieve the original image if needed)

Draw layer is optional and can be turned off or on

Programmatically control how many images are allowed per form, as well as the resolution of the images pushed to the server

Automatically capture the geolocation of where the form was filled out


Whenever a user initiates a form, the geolocation (lat/long)—along with other metadata including the date/time and the user_id—is automatically captured.  Capturing this information without any sort of coding gives you additional information about the validity of the submitted form and it’s data with minimal effort. 

For example, you will be able to know if a user says they were on site, when in fact they were actually at home when they submitted a form.  This is easy to see via the map view from the web dashboard.

View more than one column on tablets, even in data entry mode


On tablets, view collected data in columnar format when the tablet is oriented into landscape mode.

In portrait mode, and on smartphones with small devices, view collected data in a single column.


Assign forms to specific users, for specific dates and jobs


Assign a particular form (eg, an inspection form) to a specific user or group of users to be completed for a particular job by a certain date.

  • On the date specified, a push notification is sent to the user’s device, reminding him/her to complete that form

  • When the user opens the form, it automatically pre-populates with the job’s header details

  • If that job is geofenced, then the form will not accept any data until the user is within a certain distance of that geofenced job

Designed with commissioning and completions in mind

(Built-in form % complete feature)


Designed from the ground up with building commissioning (Cx) in mind, XForms automatically assigns each form a percent complete value, depending on the status of the form:

  • a form that is submitted is treated as 100% complete

  • a form that has been partially completed and saved as draft is treated as 50% complete

  • a form that hasn’t been started is treated as 0% complete

A device will then take a % complete value based on the number of forms assigned to it, along with the status of each.  The illustration below describe how these calculations are made.



% complete calculations are then rolled up from an individual device up through whatever hierarchical levels have been created (e.g., by system code, device type, area, etc) all the way up to the project level.

This feature, which takes zero extra effort to set up, will allow a Startup/Cx manager to quickly view completion calculations at top level groupings, with the ability to drill down into lower layers and view % complete down to an individual device.

Runs natively on all modern devices, not just 1 or 2 platforms, or just on tablets


Take advantage of XForm’s single codebase and run it natively on iOS, Android, Windows (Windows Universal), and any modern web browser including Chrome, Safari, Firefox, and Microsoft Edge.  It even runs on mobile browsers (Safari Mobile and Chrome Mobile). Run XForms on tablets, desktops, laptops, and smartphones, with no feature losses on smaller devices.  Run it on basic low-end (practically disposable) Kindle Fire tablets as well as on high-end intrinsically-safe military grade tablets, and everything in between.

XForms can even run (as a Windows Universal app) on a Raspberry Pi or Arduino controller.  And because it targets the native UI elements of each operating system, the app will behave the same across all platforms while adhering closely to the device’s OS UI design elements (i.e., the app will look like an iOS app on an iPhone and like an Android app on a Samsung phone).  It also takes advantage of a tablet’s larger screen real estate automatically, loading fields into two columns when in landscape mode.

Runs in both online and offline mode, regardless of the platform (native app or Progressive Web App)

Don’t worry about connectivity issues in remote locations. The XForms mobile app runs in both online and offline mode.  And when you are running in offline mode, you aren’t limited to a crippled version of the app…its the same app, with access to all of your device’s hardware, except geolocation when using the progressive web app.

It may sound a bit strange for a web application to run in offline mode, but it does just that.  And it can drive all of a device’s available hardware when in offline mode too.  That includes the ability to drive a laptop’s camera while in offline mode.  This is all possible thanks to Capacitor, the latest and greatest framework within Ionic.