← Back to Tutorials Chapter 12

Manifest Deep Dive

All Manifest Properties

PropertyDescriptionRequired
nameHuman-readable app nameYes
short_nameShort name for the home screenRecommended
descriptionDescription of the appOptional
start_urlURL loaded when launchedYes
displayDisplay mode (fullscreen, standalone, minimal-ui, browser)Yes
orientationDefault orientationOptional
iconsArray of image objectsYes
background_colorSplash screen backgroundRecommended
theme_colorToolbar/taskbar colorRecommended
scopeNavigation scope of the appOptional
idUnique identifier for the appOptional
categoriesApp store categoriesOptional
iarc_rating_idContent rating IDOptional
screenshotsApp screenshots for store listingOptional

Icons and Maskable Icons

Maskable icons are adaptive icons that fill the entire shape of the icon mask on Android. They ensure your icon looks great across different devices.

// SVG as maskable icon (concept)
// The safe zone is the inner 80% of the icon
// The outer 20% may be cropped by the mask

{
  "src": "/icons/icon-512.png",
  "sizes": "512x512",
  "type": "image/png",
  "purpose": "any maskable"
}

Splash Screen

The splash screen is generated automatically from the manifest properties:

Display Modes

ModeDescription
fullscreenHides all browser UI, fills the screen
standaloneLooks like a native app, hides browser chrome
minimal-uiShows minimal browser controls (back, forward, refresh)
browserOpens in the regular browser tab

Manifest Linking

<!-- In the HTML head -->
<link rel="manifest" href="/manifest.json">

<!-- Apple-specific meta tags (for iOS) -->
<meta name="apple-mobile-web-app-capable" content="yes">
<meta name="apple-mobile-web-app-status-bar-style" content="black-translucent">
<meta name="apple-mobile-web-app-title" content="My PWA">
<link rel="apple-touch-icon" href="/icons/icon-192.png">
<link rel="apple-touch-startup-image" href="/splash.png">

<!-- Windows / IE meta tags -->
<meta name="application-name" content="My PWA">
<meta name="msapplication-TileColor" content="#4f46e5">
<meta name="msapplication-TileImage" content="/icons/icon-144.png">
Exercise: Audit an existing PWA's manifest using Chrome DevTools. Check all properties, verify icon sizes and purposes, and test how the splash screen looks. Modify the manifest to add maskable icons and screenshots.