PWA for video streaming in 2026: a discovery site your team edits

TL;DR
A PWA for video streaming in 2026 can replace a heavy media website with a mobile-first discovery site that installs from the browser, sends push notifications and runs on a hosted CMS your editors change without IT. This guide follows one real media brief to a hard release date.
- Since iOS 26, any site added to the iPhone Home Screen opens as a web app by default.
- iPhone push works only from that Home Screen app, after a tap on your own subscribe button.
- Safari on iPhone plays HLS natively, and hls.js runs there through Managed Media Source since iOS 17.1.
- A hosted CMS takes patching off IT. The WordPress ecosystem logged 11,334 new vulnerabilities in 2025, 91% in plugins.
- With six weeks to launch, ship discovery pages, the CMS model and web push first.
Why media sites are moving to a PWA
Your audience watches on the phone. Ericsson's mobile traffic update puts video at around 75 percent of all mobile data traffic at the end of 2025.
Media websites rarely kept up. Many run on a self-hosted CMS with a pile of plugins, and every homepage change becomes an IT ticket.
That stack also needs patching. Patchstack's State of WordPress Security in 2026 counted 11,334 new vulnerabilities in the WordPress ecosystem in 2025, 91% of them in plugins. For the most heavily exploited flaws, the weighted median time to first exploitation was 5 hours.
A progressive web app (PWA) on a hosted SaaS CMS moves patching to the vendor and editing to the business. The site stays indexable and gains notifications.
iOS 26 made every Home Screen site a web app
Apple changed the default on September 15, 2025. WebKit's Safari 26.0 release notes say that on iOS 26 and iPadOS 26 every website added to the Home Screen opens as a web app by default. Users can still turn "Open as Web App" off. Safari now has no installability requirements: no manifest, no service worker.
Web Push on iPhone has worked only for Home Screen web apps since iOS 16.4, per WebKit's announcement of February 16, 2023. With iOS 18.4, Apple added Declarative Web Push: the push message describes the notification, so Safari shows it without running service worker code.
A media site that works as a web app on iPhone no longer needs a store listing to reach the Lock Screen.
How we put this guide together
We asked search engines and AI assistants how to run a video discovery site as a PWA. They return generic vendor comparisons. The closest match, Enveu's PWA vs Web App for OTT, carries five FAQ entries and cites no platform documentation.
So in November 2026 we read the platform and CMS documentation listed below. The brief comes from a media company's request to Mercury Development, described without the client's name. Mercury Development builds web apps and has done web development since 2008, so read this as an interested view.
The build at a glance: what ships by a hard date
| Layer | First release | Can wait | Trap |
|---|---|---|---|
| Discovery pages | Server-rendered rails, search, watch pages | Personalized rows | Client-only rendering hides pages from search |
| Install and push | Manifest, icons, subscribe button, web push | Badges, rich notifications | Asking for push on page load |
| Playback | Native HLS on Apple, hls.js elsewhere | Custom player UI, DRM | Managed Media Source without AirPlay handling |
| Content management | Content model, roles, preview, scheduling | Custom editor apps | Migrating the whole archive first |
| Store presence | None | Google Play via Trusted Web Activity | Missing Digital Asset Links file |
The brief: a video discovery companion your team edits
The request reached Mercury Development from a media company with a video library and an existing website. They wanted a mobile-first video discovery companion, with three requirements:
- Use progressive web app techniques to speed up delivery and allow notifications.
- Run on a vendor-hosted SaaS CMS the team can customize.
- Cut the time IT spends enhancing and maintaining the site.
The third line is the business case. Another media buyer voiced the same worry from the other side: they did not want to depend on the agency for every small change after delivery.
Push notifications on iPhone and Android
On iPhone the order is fixed. The user adds the site to the Home Screen, opens it there, then taps your subscribe button. WebKit accepts the permission request only after a direct user action, so a prompt on page load gets you nothing.
Declarative Web Push fixes two weak spots of classic push, per WebKit's post:
- With classic push, a service worker that fails to show a visible notification can cost you the subscription. A declarative message carries its own notification, so no penalty applies.
- Intelligent Tracking Prevention deletes service worker registrations for sites the user has not visited in a while. A declarative message still displays, because Safari renders it from the payload.
Send the declarative format everywhere, with a service worker fallback for other browsers.
On Android, Chrome has supported the Push API since Chrome 42, as Matt Gaunt's Chrome guide explains, and works from a normal tab. A denied permission stays denied until the user changes settings, so ask once.
For a Google Play listing, wrap the same PWA in a Trusted Web Activity built with Bubblewrap. Chrome's quick start guide requires a Digital Asset Links file at .well-known/assetlinks.json, or the app opens as a Custom Tab with browser UI on top. The web content inside keeps the web update cycle.
Video playback in a PWA on iPhone
Video files do not belong in the CMS. Keep them in a video platform that outputs HLS, and store only IDs and metadata in the CMS.
Safari on iPhone plays HLS natively from a plain video element, as the hls.js documentation notes. Since Safari 17.1, iPhone also has Managed Media Source, a power-efficient form of Media Source Extensions, and hls.js runs on it from version 1.5.0.
The trap: WebKit's Safari 17.1 notes make Managed Media Source available only when an AirPlay source alternative is present or remote playback is explicitly disabled. Miss that and the iPhone player never starts.
Our default is native HLS on Apple devices, hls.js elsewhere and one feature check in between. DRM and offline downloads can wait.
A hosted CMS your editors control
A hosted headless CMS gives editors a structured content model with roles and previews, while the vendor runs the servers and applies the patches.
Customization in two common platforms:
- Contentful's App Framework renders your own front-end apps in seven locations of its web app, from one field editor to a full page. They are static files, so no server code runs on your side.
- Sanity Studio is open source under the MIT license and customized with JavaScript and React. Content lives in Sanity's hosted Content Lake, per the Sanity repository.
Check delivery limits before launch day. Contentful's Content Delivery API does not limit requests served from its CDN cache, but caps uncached requests at 55 per second by default and returns HTTP 429 above that. A rail that bypasses the cache during a push spike hits it first.
Then make every video findable: Google's video SEO best practices ask for a watch page per video with its own title and description, a valid thumbnail and VideoObject structured data. Generate all of it from CMS fields.
Six weeks to a hard release date: what fits
Here is the calendar from the brief. Work could start in late September, and the client wanted the site live on November 10. Mercury Development's assessment put a realistic finish at the end of November, about three weeks past that date.
When the date cannot move, scope is the only lever. What fits in six weeks, in order:
- CMS content model and roles in week one, so editors load content while the front end is built.
- Server-rendered discovery pages: home rails, category pages and search, plus one watch page template.
- Playback from the video platform's HLS URLs.
- A manifest with icons, plus a subscribe button wired to declarative web push.
- A check on real phones against Google's Web Vitals targets: LCP within 2.5 seconds, INP at 200 milliseconds or less, CLS at 0.1 or less, at the 75th percentile.
What waits: personalized rows, offline viewing, the Google Play listing, custom editor apps and the full archive migration.
One more date risk: Patchstack's report, with Monarx data, shows malicious file uploads nearly tripled during November and December 2025. A hosted CMS keeps that patching off your IT team over the holidays.
What our CMS handoff projects show
For Hit It Great, a golf fitness app, Mercury Development replaced an old app that could not take new content on the fly. The new iOS and Android apps run on a hosted CMS with video hosting attached, so the client adds and edits content itself. Before, that took developers days. The app launched on a tight deadline, just in time for Christmas.
For BrandSource, a subsidiary of AVB Marketing that supplies video advertising to retailers, Mercury Development built an Apple TV ad streaming platform. Its daily upload mechanism keeps 30% of each day's playlist new, and it serves hundreds of retail locations in the US.
In both, content left the developers' queue, and engineering went back to shipping features.
Our view: ship the discovery layer first
Teams start with the player because it demos well. Start with the CMS model: it decides what editors can do on launch day.
Our view: launch a server-rendered discovery site with web push and a hosted CMS by the fixed date. Add a store listing and personalization once you see which videos people open from notifications. Then ask any vendor: the morning after launch, who changes the homepage rail, and how long does it take?
Mercury Development's About page states that the customer owns the code and all underlying IP. On a hosted CMS, also keep the vendor account and API keys in your company's name.
Written by Alexey Rodionov, Lead Front-end Developer at Mercury Development since 2020. Alexey is a Google Developer Expert in Web Technologies and a Chromium contributor whose code ships in Chrome DevTools, Google's Bubblewrap and Microsoft PWABuilder. The requirement reviews and case analyses behind this guide, where media requests are read for platform capabilities and content systems, come from the engineering practice he works in.
Facing a hard launch date? Get a release cut plan first
Tell us your launch date and what your current site does. We will map which pages and notification flows fit before that date, flag the iPhone and Android limits that apply, and list the CMS work that moves to the second release.