App Configuration
A UIX app can be configured with 2 types of files: An app.dx
file that specifies general options for the entire app, and individual .dx
files located in frontend or backend directories that specify options for the specific endpoints.
DATEX Script files (.dx)
UIX uses DATEX Script files as its configuration files.
DATEX Script is a superset of JSON. It also supports URLs, relative paths and user-defined types. Single- and multiline comments can be used.
Example:
MyFile.dx{
normalJSON: [1, "text", {"a": "b"}],
url: https://example.com, // this is a comment
relativePath: ../my/file/path,
}
/*
This is a multiline comment
*/
To learn more about DATEX Script, check out the DATEX documentation.
The app.dx file
The app.dx
file serves as the main configuration file for a UIX application. It defines essential settings, metadata, and optional features that shape how your app behaves and appears.
General Options
The following options provide some general information or behavior of the app.
name
: (text) - The name of the appdescription
: (text) - Short description for the appicon
: (text or url) - URL path to an app icon image - can also be a relative path, e.g../common/res/icon.png
installable
: (boolean) - Tells UIX to make the app installable as standalone web appmeta
: (Record<string,string>) - Custom<meta>
tags (name and content) that wille be added to the HTML headmanifest
: Record<string,any> - Custom web manifest options that override the defaults set by UIXexperimental_features
: string[] - List of experimental UIX features that should be activated
Experimental Features
Experimental features are subject to change and might be enabled by default in future versions of UIX.
To enable specific features, add them to the experimental_features
list in the app.dx
file.
Available experimental features:
indirect-references
: Sets theINDIRECT_REFERENCES
flag for the DATEX Runtime, which enables for indirect references to pointers from other pointers.view-transitions
: Enables CSS view transitions for backend navigations and frontend navigations.sqlite-storage
: Uses the SQLite storage location on the backend for storing persistent data. The SQLite storage is faster, has more storage capacity and better support for pattern matching.
Help us improving our docs
Our documentations are fully open source. Something is wrong or unclear?