Configuration for your app

The configuration of your app is stored in a file called config.json. It determines basic settings for your app, such as the name users will see (for more details see below). The rest of the configuration for your app will be contained in your module configurations.

Modifying your app's config

You can edit your app config through the Toolkit UI by clicking the App config in the sidebar:

Toolkit App Config

Basic app configuration options

Below describes each of the basic configuration options which are available for all Forge apps regardless of what modules you are using.

This will be the name for your app, a short, descriptive name is recommended as in some situations long names may be cut
This text will be displayed as the author or creator of the app, depending on the platform.
Optional. A longer description of what your app does. This description may be displayed to users during and after installation, to let them know what the app does.
The version of your app. It must be formatted as up to three dot-separated numbers, e.g. 1.1 or 0.99.9.
Build Number
Optional. Override the automatically generated build numbers for your app. More documentation available here for Android and iOS.
Optional. Your website, or location of more information about this app.
Trusted Urls
Mobile only. An array of trusted external URL match patterns. If your app navigates to a URL matching one of these patterns, the page will be displayed inlines as part of your app. The forge APIs may be used too - see the note below.

Trusted URLs and using the forge APIs

To use the forge APIs on a remote page displayed as part of your app, the remote URL must first match one of your Trusted URL patterns. Secondly, all.js and app_config.js must be available in your remote page, to present the API to your JavaScript.

These files are available in a built app:

  • development/android/assets/forge/all.js
  • development/ios/

The files are OS-specific, so you need to make sure the right one is loaded into the remote page.

Use of this feature is for advanced users only! It is fraught with peril.

If your JavaScript code running in the remote page attempts to access forge APIs which aren't present in the native app, you will see "UNAVAILABLE" errors coming back.

Package Names

The Package Names configuration controls the package name used internally when building your app.

If you don't set this manually, we'll generate a package name automatically for you, which looks something like io.trigger.forge7faf8ebcb8a111e1910212313d1adcbe.

You will need to set your own package name manually to match the App ID that you configure in the iOS provisioning portal prior to App Store submission.

Package name used for your Android App.
App ID used for your iOS App.


See the logging API page for details about configuring and using logging.


Sets whether you want your app to use Reload or not. Setting this to false will disable all Reload functionality for your app.
Reload Force WiFi
Sets whether your app will perform Reload updates when devices are on a mobile data connection. Setting this to true will only allow Reload updates when devices are on a WiFi connection.

See the reload API page for more information about configuring and using reload.


Cache Enabled
Sets whether you want the underlying WebView to cache requests or not. Unless you have a specific problem with the caching of remotely hosted large assets it is recommended to leave this off as caching can interfere with reload and script updates during development.


The requirements configuration allows you to set specific device requirements for your apps.


Minimum Version
The minimum Android API level you want to support, it must be between 5 and 15. More details can be found on the Android developers site.
Disable ICS Acceleration
Disables hardware acceleration on Android 4.0, this is a workaround to potential rendering issues which can affect some apps on this particular version of Android.
Remote Debugging
Enable remote debugging with Chrome DevTools on Android 4.4 or higher devices. More details can be found on the Google Developers Site
Window Soft Input Mode
Sets how the main window of the activity interacts with the window containing the on-screen soft keyboard. More details can be found in the Android SDK Documentation
Adjust Content Insets
One of: always, short_edges or never. The content inset adjustment behavior controls the layout of your app content on devices with non-uniform displays. See the layout API page for more information.


Minimum Version
Deprecated from 2.2.7. Apple no longer allows app store submissions with a Minimum iOS version higher than the Minimum SDK version used for compilation.
Device Family
Used to limit the types of device which can run the app, must be one of "any", "iphone" or "ipad".
Disable Backup Web Storage
Set to true to prevent HTML5 storage data from being backed up by iCloud (Default is false)
Adjust Content Insets
One of: always or never. The content inset adjustment behavior controls the layout of your app content on devices with non-uniform displays. See the layout API page for more information.