# Application Configuration

The appRules application configuration settings are stored in the  Default.json file in the root folder.

{% hint style="info" %}
All settings in the Default.json file are optional
{% endhint %}

<table><thead><tr><th width="328"></th><th></th></tr></thead><tbody><tr><td>startup: </td><td>Full name of the startup method. i.e. "MyApp.Program.Main, MyApp".</td></tr><tr><td>mainWindow: </td><td>Full name of a view (Page or Form) created automatically at startup. i.e. "MyApp.MainView, MyApp".</td></tr><tr><td>theme: </td><td>Name of the theme, without the extension, to load at startup.</td></tr><tr><td>url: </td><td>Destination URL. If null, the request must match a web page.</td></tr><tr><td>allowedRoutes: </td><td>Allows the application to handle different Url routes, separated by a semicolon. i.e. "api;admin;query/users".</td></tr><tr><td>culture: </td><td>The default culture of the application. Default: "auto" (detects the culture from the browser.)</td></tr><tr><td>rightToLeft: </td><td>Enables or disables Right to Left mode: true, false or auto. Default: "auto".</td></tr><tr><td>sessionTimeout: </td><td>Timeout of the session in seconds. Default: 120. Minimum: 60. Disable: 0.</td></tr><tr><td>responseTimeout: </td><td>Timeout of the requests in seconds. Default: 300. Minimum: 300. Increase this value if you expect your application to process long running requests.</td></tr><tr><td>pollingInterval: </td><td>Interval for the automatic polling of the server in milliseconds. Default: 0 (disabled). Minimum: 1000. This option is ignored for WebSocket connections.</td></tr><tr><td>autoReload: </td><td>When true, the application is automatically reloaded when the session expires or Application.Exit() is called. Default: false.</td></tr><tr><td>secure: </td><td>Forces the client to use SSL. Default: false.</td></tr><tr><td>showLoader: </td><td>Loads the ajax loader. Default: true.</td></tr><tr><td>loaderTimeout: </td><td>Timeout before the appearance of the Ajax loader in milliseconds. Default: 5000. Minimum: 1000. Disable: 0.</td></tr><tr><td>browserCheck: </td><td>Custom expression to validate the browser, i.e. "navigator.platform == 'Win32'".</td></tr><tr><td>enablePWA: </td><td>Enables PWA mode in browsers that support it. Default: false.</td></tr><tr><td>offlineUrl: </td><td>URL to navigate to when the client loses connectivity with the application. Default: "".</td></tr><tr><td>debug: </td><td>Enables logging on the client browser console. Default: false.</td></tr><tr><td>enableWebSocket: </td><td>Enables the user of WebSocket if available. Default: true.</td></tr><tr><td>enableWebSocketCompression: </td><td>Enables compression of incoming WebSocket data. Default: true.</td></tr><tr><td>maxModalStack: </td><td>Maximum number of nested modal dialogs. Default: 10.</td></tr><tr><td>dropDuplicateClicks: </td><td>+ are still queued and will be executed. Default: false.</td></tr><tr><td>disableClientObjectModel: </td><td>Disables the creation of the JavaScript object model on the client.</td></tr><tr><td>impersonate: </td><td>Set impersonate:true to impersonate the user on the server. Default: false.</td></tr><tr><td>threadPool: </td><td>Configures the thread pool without having to modify the machin.config file. All values are optional. i.e. {minWorkerThreads:100}. Default: null.</td></tr><tr><td>options: </td><td>Map of platform options. i.e. {"automation.mode": true, "mobile.mode": true, ...}.</td></tr><tr><td>settings: </td><td><p>Map of custom application settings</p><p></p><p>deployment: "aws", "azure", "onpremise"</p><p></p><p>portaldatafoldersdirectory: "", "&#x3C;your portal data folder>" </p><p>Default: ""  (ProgramData folder)</p><p></p><p></p></td></tr><tr><td></td><td></td></tr><tr><td></td><td></td></tr><tr><td></td><td></td></tr><tr><td></td><td></td></tr></tbody></table>


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.appstrategy.com/apprules-r-documentation/platform/self-hosting/application-configuration.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
