While NodeBB is a pretty progressive web application, it doesn't fulfill all of the requirements that will make it an installable app via browsers.
Checklist of required changes (based on a lighthouse check on community.nodebb.org and try.nodebb.org):
Currently all of these are possible via plugin interfaces (you can set up a route to a service worker, create a client script that registers it and add all required parameters to manifest.json via the manifest.build hook), but I think this should also be added to core NodeBB to make the experience more streamlined.
(Also - in this topic there was a recommendation for opening an issue here, but I can't find it)
While it would also be possible to add web push support along with this feature, I think instead NodeBB should just have a basic service worker and a way for plugins to replace/modify it easily. Web APIs change, and there can be reasons for using alternatives, so not locking it to one push API and library seems like the best option.
FWIW PWA compliance is one of the projects on our to-do list, and is something we'd want in core, and not a plugin. :smile:
Demo here: https://community.nodebb.org/
Probably won't work on anything but the latest desktop/mobile chrome/FF; it certainly does not work on iOS
Next steps are offline access + desktop/mobile notifs, track these separately IMO
Most helpful comment
FWIW PWA compliance is one of the projects on our to-do list, and is something we'd want in core, and not a plugin. :smile: