Activating a PWA is simple; just create the manifest file and reference it in HTML. Implementing local storage and proper cache features in a PWA becomes much easier with a well-designed service worker, which includes notifications.
However, this time I am also experimenting with server-side rendering using Next.js and edge locations. In theory, it should be possible to create PWAs that outperform native applications in terms of speed.