Web app manifest
A web app manifest file provides metadata about the site. The browser can use the metadata to install the site as a standalone application on the user's device. The metadata usually includes the app's name, icon, description, and ways in which the app wishes to integrate with the device. It is most useful when native HTML semantics or browser capabilities can replace custom implementation work.
Overview
A web app manifest file provides metadata about the site. The browser can use the metadata to install the site as a standalone application on the user's device. The metadata usually includes the app's name, icon, description, and ways in which the app wishes to integrate with the device. It is most useful when native HTML semantics or browser capabilities can replace custom implementation work.
Browser support
| Feature | Desktop | Mobile | ||||
|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Safari | Chrome Android | Safari iOS | |
| 46 | 79 | | | 46 | | |
| The manifest keyword for the rel attribute of the link element indicates that the target resource is a Web app manifest. | 39 | 79 | | 17 | 39 | 11.3 |
| The description manifest member is used to explain the core features or functionality of your web application. This text helps users understand your app's purpose when viewing it in an app store. | 88 | 88 | | | 88 | |
| The display manifest member is used to specify your preferred display mode for the web application. The display mode determines how much of the browser UI is shown to the user when the app is launched within the context of an operating system. You can choose to show the full browser interface or hide it to provide a more app-like experience. | 39 | 79 | | 17 | 39 | 11.3 |
| The icons manifest member is used to specify one or more image files that define the icons to represent your web application. | 39 | 79 | | 17 | 39 | 15.4 |
| The id manifest member is used to specify a unique identifier for your web application. | 96 | 96 | | 17 | 96 | 16.4 |
| The name manifest member is used to specify the full name of your web application as it's usually displayed to users, such as in application lists or as a label for your application's icon. | 39 | 79 | | 17 | 39 | 11.3 |
| The orientation manifest member is used to specify the default orientation for your web application. It defines how the app should be displayed when launched and during use, in relation to the device's screen orientation, particularly on devices that support multiple orientations. | 39 | 79 | | | 39 | |
| The scope manifest member is used to specify the top-level URL path that contains your web application's pages and subdirectories. When users install and use your web app, pages within scope provide an app-like interface. When users navigate to pages outside the app's scope, they still experience the app-like interface, but browsers display UI elements like… | 53 | 79 | | 17 | 53 | 11.3 |
manifests.webapp.serviceworker Experimental Non-standard The serviceworker member specifies a serviceworker that is Just-In-Time (JIT)-installed and registered to run a web-based payment app providing a payment mechanism for a specified payment method in a merchant website. See Web-based Payment Handler API for more details. | 70 | 79 | | | 70 | |
manifests.webapp.serviceworker.scope Experimental Non-standard | 70 | 79 | | | 70 | |
manifests.webapp.serviceworker.src Experimental Non-standard | 70 | 79 | | | 70 | |
manifests.webapp.serviceworker.use_cache Experimental Non-standard | 70 | 79 | | | 70 | |
| The short_name manifest member is used to specify a short name for your web application, which may be used when the full name is too long for the available space. | 39 | 79 | | 17 | 39 | 11.3 |
| The start_url manifest member is used to specify the URL that should be opened when a user launches your web application, such as when tapping the application's icon on their device's home screen or in an application list. | 39 | 79 | | 17 | 39 | 11.3 |
| The theme_color member is used to specify the default color for your web application's user interface. This color may be applied to various browser UI elements, such as the toolbar, address bar, and status bar. It can be particularly noticeable in contexts like the task switcher or when the app is added to the home screen. | 46 | 79 | | 17 | 46 | 15 |
- `display` and/or `display_override` are required for a web app to be installable.
- `display` and/or `display_override` are required for a web app to be installable.
- `display` and/or `display_override` are required for a web app to be installable.
- `icons` is required for a web app to be installable.
- `icons` is required for a web app to be installable.
- Only used when no `apple-touch-icon` is present and either `"purpose" is set to "any"` or `"purpose"` is not specified.
- `icons` is required for a web app to be installable.
- Only used when no `apple-touch-icon` is present and either `"purpose" is set to "any"` or `"purpose"` is not specified.
- The property parses, but has no effect.
- `name` or `short_name` is required for a web app to be installable.
- `name` or `short_name` is required for a web app to be installable.
- `name` or `short_name` is required for a web app to be installable.
- `short_name` or `name` is required for a web app to be installable.
- `short_name` or `name` is required for a web app to be installable.
- `short_name` or `name` is required for a web app to be installable.
- `start_url` is required for a web app to be installable.
- `start_url` is required for a web app to be installable.
- `start_url` is required for a web app to be installable.
Syntax
<link rel="manifest" href="/manifest.json">
<!-- manifest.json -->
<!-- { "name": "マイアプリ", "short_name": "アプリ",
"start_url": "/", "display": "standalone",
"theme_color": "#3498db" } --> Live demo
Web app manifest fields
Compare the core fields that shape installable web app behavior.
Installable app checklist
Describe how manifests pair with service workers and icons in app-like experiences.
Manifest role
Explain that the manifest describes application metadata rather than replacing page content.
Use cases
Use Web app manifest
Use Web app manifest when standard HTML needs a more specific platform feature, semantic signal, or browser capability.
Handle edge cases
Apply Web app manifest to solve a focused requirement without redesigning the whole page architecture.
Cautions
- Test Web app manifest in your target browsers and input environments before depending on it as a primary behavior.
- Provide a fallback path or acceptable degradation strategy when support is still limited.
Accessibility
- Make sure Web app manifest supports the intended task without making the page harder to perceive, understand, or operate.
Related links
Powered by web-features