Skip to main content
The viewer storefront is the public OTT experience. Routes live under app/(viewer)/ and share one route tree across all themes — only skins/templates change.

Primary routes

How look is applied

  1. Active theme templateEntry selects the home template and chrome variant.
  2. ViewerShell wraps pages in StorefrontThemeProvider.
  3. getStorefrontSkin supplies pageShell, gutter, button chrome.
  4. <html data-storefront-theme="…"> scopes CSS isolation.
See Themes & Skins.