---
schema_version: "1"
id: 1bb45720c3e4f8e6dfa80e885fa95c1cadc043a472adad4e5f27c3f564f721b3
title: aura:application
collection: developer
version: current
locale: en-us
portal_url: https://docs.salesforce.com/developer/current/en-us/platform/aura-platform/guides/aura/ref/ref-aura-application.md
canonical_url: https://developer.salesforce.com/docs/platform/aura-platform/guide/ref-aura-application.html
source_site: developer.salesforce.com
content_type: documentation
content_hash: 127add8990c0dfa683055962b7959c240d43330bc8b7390e92d52d2b3df78db1
products:
  - Lightning Aura Components Developer Guide
  - Platform Developer Content
---

# aura:application

An app is a special top-level component whose markup is in a .app resource.

The markup looks similar to HTML and can contain components as well as a set of supported HTML tags. The .app resource is a standalone entry point for the app and enables you to define the overall application layout, style sheets, and global JavaScript includes. It starts with the top-level `<aura:application>` tag, which contains optional system attributes. These system attributes tell the framework how to configure the app.

|System Attribute|Type|Description|
|----------------|----|-----------|
|`access`|String|Indicates whether the app can be extended by another app outside of a namespace. Possible values are `public` (default), and `global`.|
|`controller`|String|The Apex controller class for the app. The format is `namespace.myController`.|
|`description`|String|A brief description of the app.|
|`extends`|Component|The app to be extended, if applicable. For example, `extends="namespace:yourApp"`.|
|`extensible`|Boolean|Indicates whether the app is extensible by another app. Defaults to `false`.|
|`implements`|String|A comma-separated list of interfaces that the app implements.|
|`template`|Component|The name of the template used to bootstrap the loading of the framework and the app. The default value is `aura:template`. You can customize the template by creating your own component that extends the default template. For example: `<aura:component extends="aura:template" ... >`|
|`tokens`|String|A comma-separated list of tokens bundles for the application. For example, `tokens="ns:myAppTokens"`. Tokens make it easy to ensure that your design is consistent, and even easier to update it as your design evolves. Define the token values once and reuse them throughout your application.|
|`useAppcache`|Boolean|Deprecated. Browser vendors have deprecated AppCache, so we followed their lead. Remove the `useAppcache` attribute in the `<aura:application>` tag of your standalone apps (`.app` resources) to avoid cross-browser support issues due to deprecation by browser vendors. If you don’t currently set `useAppcache` in an `<aura:application>` tag, you don’t have to do anything because the default value of `useAppcache` is `false`.|

`aura:application` also includes a `body` attribute defined in a `<aura:attribute>` tag. Attributes usually control the output or behavior of a component, but not the configuration information in system attributes.

|Attribute|Type|Description|
|---------|----|-----------|
|`body`|`Component[]`|The body of the app. In markup, this is everything in the body of the tag.|

**See Also**  


-   [Creating Apps](https://developer.salesforce.com/docs/platform/aura-platform/apps/apps-intro.md)
-   [Application Access Control](https://developer.salesforce.com/docs/platform/aura-platform/access/access-apps.md)

