Glossary

Definition

orientation (manifest field)

Short definition

orientation is a manifest field, e.g. "orientation": "portrait-primary", that requests a fixed screen orientation for the installed app. Accepted values include any, natural, landscape, portrait, portrait-primary, portrait-secondary, landscape-primary and landscape-secondary.

Reviewed July 24, 2026

The lock only applies once the app is running in standalone or fullscreen display mode; a normal browser tab ignores the manifest orientation field entirely and follows the device's own rotation lock.

This is the same set of values accepted by the Screen Orientation API's lock() method, so a manifest-level lock and a JavaScript-level screen.orientation.lock() call are complementary — the manifest sets the default at launch, the API can change it later.

A landscape-only game or dashboard app benefits from locking orientation to avoid an awkward auto-rotate mid-session, while most content-driven PWAs should leave orientation as "any" (the default) so it behaves like a normal page.

Support varies by platform: desktop Chromium and iOS effectively ignore the field since desktop windows and iPad multitasking do not follow the same rotation model as a phone.

Related terms
display (manifest field)
display is the manifest field that chooses the browser chrome level for the installed app. Accepted values are fullscreen, standalone, minimal-ui and browser. "display": "standalone" is the most common choice because it hides the address bar and tab strip while keeping the OS status bar visible.
Web App Manifest
A Web App Manifest is a JSON file (usually manifest.webmanifest) that declares your app's name, icons, start URL, theme colour and display mode. The browser reads it to render the install prompt and the home-screen icon.
Standalone display mode
Standalone is a value of the display field in a Web App Manifest. It tells the browser to launch the PWA in its own window with no address bar or tabs, so it looks and behaves like a native app. It is the most common display mode for installable PWAs.
categories (manifest field)
categories is an optional manifest array, for example "categories": ["shopping", "business"], drawn loosely from a W3C-maintained list of common app-store category names. It has no effect on install eligibility or on-page behaviour and is purely metadata consumed by platforms that list PWAs alongside native apps.
protocol_handlers (manifest field)
protocol_handlers is a manifest array such as [{"protocol": "web+music", "url": "/play?track=%s"}] that registers the installed app as a handler for a URL scheme. Clicking a web+music: link anywhere in the OS, after the user confirms a one-time permission prompt, opens the app at the given URL with %s replaced by the encoded link.
share_target (manifest field)
share_target is a manifest object, for example {"action": "/share", "method": "POST", "enctype": "multipart/form-data", "params": {"title": "title", "text": "text", "url": "url", "files": [{"name": "media", "accept": ["image/*"]}]}}, that adds the installed PWA as a destination in the operating system's native share sheet.