A hands-on walkthrough of building a desktop-class music player app (PWAmp) using only web technologies and Progressive Web App APIs. Covers making an app installable with a web manifest and service worker, controlling the window titlebar with Window Controls Overlay, implementing offline support via cache-first service worker strategy, registering as a file handler for audio formats using the File Handling API, integrating with the OS through protocol handlers and the Web Share Target API, and distributing via app stores using PWABuilder. Demonstrates that PWAs can match most characteristics of native desktop apps without any native code.
Table of contents
PWAmpBut what defines a desktop app exactly?Making the app installable and have its own iconControlling the entire app's windowMaking the app always workHandling local filesIntegrating with other apps and the operating systemDoing non-trivial workApp stores10 Impressions