With his finally adding support for web push notifications, I think we are pretty much there already. What else is missing that’s needed for most apps?
https://webkit.org/tracking-prevention/
I have an native app for both platforms which uses some of these because I can't do it with a webapp, I'd love for everything to be done in the browser.
Web Bluetooth
Web MIDI API
Magnetometer AP
Web NFC API
Device Memory API
Network Information API
Battery Status API
Web Bluetooth Scanning
Ambient Light Sensor
HDCP Policy Check extension for EME Proximity Sensor
WebHID
Serial API
Web USB
Geolocation Sensor (background geolocation)
User Idle Detection