HTML-OS capabilities page
What is this thing?
Developers being what they are, they simply have to add a bit extra to everything (whatever real people want or need), make it more complicated, more programmable, more complete (most of them can't help themselves in this, it seems – apparently a continuous variation on the second system effect / creeping featuritis / Silicon Valley Reality Bubble Syndrome). The major upshot to all this is currently what I call InternetOS. This requires a number of javascript APIs – and this page checks your browser's compatibility with some of the essential (or sometimes not-so-essential) ones.
I am of course not the only person to have thought of this (though opinions on its advisability differ): this video is all at once insightful, funny, erudite and a bit depressing.
A probably-complete (but less dynamic) list of InternetOS APIs can be found at the DMO API reference page.
TODO: PWA. This relies primarily on ServiceWorkers and Fetch+Cache, but if there's a specific way of testing for "PWA", I haven't found it. Can also use ChannelMessaging, Notification, possibly File (and almost anything else, really).
The first test is: |
Does this browser support javascript at all? |
And the result is: |
Nope (and no further tests are possible) |
Further tests:
- Async requests
- AJAX: Untested
- Fetch API: Untested
- Audio
- Result: Untested
- Cache
- These are all manually managed and mostly useful in Service Workers
- Result: Untested
- Canvas
- Result: Untested
- Channel Messaging
- Result: Untested
- Clipboard API
- Result: Untested
- This is one of those APIs which can depend on security
- Encoding
- There are several interfaces to this one (for what that's worth).
- TextDecoder: Untested
- File API
- Result: Untested
- Gamepad
- Result: Untested
- geolocation
- Result: Untested
- Media capabilities
- This one, while suffering very much from
InternetOS
syndrome, actually looks convenient.
- Result: Untested
- Media Capture and Streams API
- Related to but technically not part of WebRTC
- This one also contains many component APIs
- MediaDevices result: Untested
- Notification API
- Result: Untested
- Storage API
- Local storage: Untested
- Session storage: Untested
- WakeLock
- For pages which need to stay visible without much user action
- Result: Untested
- WebAuthn
- Derived from
Credentials
which is, paradoxically, less stable
- Result: Untested
- WebAssembly
- Result: Untested
- WebDriver
- Result: Untested
- WebRTC
- There are actually several APIs involved here
- RTCPeerConnection result: Untested
- MediaStreams result: Untested
- Check this out for some further info.
- WebSockets
- Result: Untested
- Web Workers
- Result: Untested
- Shared Workers: Untested
- Service Workers: Untested
- DNS-over-HTTPS
- This feels like the point where things start to get stupidly meta… How soon before encapsulating everything in HTTPS becomes the standard?
- Testing method unknown for the time being (but as of this writing – 2019/07/13 – only FireFox can do it, and even then only after tweaking).
TODO