> For the complete documentation index, see [llms.txt](https://docs.silkbuilder.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.silkbuilder.com/tags/app.md).

# App

This tag defines a SilkBuilder Application and is required. It loads the application's environment, which is necessary for the other Silk Components to operate.

## Tag Definition

Used standalone:

```xml
<silk:App
  id=""
  title=""
  theme="default"
  timeout="true"
  role=""
  ipFilter=""
  loader="true"
  renderIf=""
  jsLib=""
/>
```

Used as a container:

```xml
<silk:App
  id=""
  title=""
  theme="default"
  timeout="true"
  role=""
  ipFilter=""
  loader="true"
  renderIf=""
  jsLib=""
>
   Contains: Other HTML and/or Silk components. *
</silk:App>
```

## Properties

<sup>\*</sup>Required property.

### id

The app's unique identifier.\
This is added during SilkBuilder's code rendering.\
Default Value: *Empty*.

### title

Used to define the web page title that the navigator will display.\
Default Value: *Empty*.

### theme

The name of the theme defines the styles used by the components. This property is only necessary if the application uses a different template from the "default". The theme value is defined as the session variable 'silkTheme' and is automatically loaded.\
Default Value: *default*.

### timeout

Defines if the application will timeout and request authentication. The default value is "true" and can be disabled by setting the property to "false". It is only required if the value will be set to "false".\
Default Value: *true*.

### role

Set the roles that are authorized to run the application. It should contain a list of string values separated by commas. These roles will be checked against the user's roles loaded at authentication time. By default, it is empty, allowing access to any logged-in user. The validation process only happens if a value is provided.\
Default Value: *Empty*.

### ipFilter

Will restrict the application use to the provided IP filter.\
Default Value: *Empty*.

### loader

Defines if the loader image (.gif) will be displayed. The default value is "true".\
Default Value: *true*.

### renderIf

It contains the logic sentence defining whether the component should be rendered.\
The logic statement's explanation is in the [Server Code Logic](https://github.com/silkbuider/documentation/tree/master/tags/how_to/server_code_logic.md) documentation.\
Default Value: *Empty*.

### jsLib

Default Value: *Empty*.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## 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, and the optional `goal` query parameter:

```
GET https://docs.silkbuilder.com/tags/app.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

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.
