arrow_back_ios Web Platform menu group

Web Platform

Various notes about JavaScript. Some things I want to look into are:

  • JavaScript meta-programming – converting to estree, making modifications and prettyprinting afterwards...
  • WebGPU
  • WebXR + BabylonJS
  • WASM (C/C++)

Misc notes

Design systems and component libraries

WebTech 2021

State of web-apis and technology:

  • Chrome/Blink-based: ca. 73% worldwide traffic. State-of-the-art, easy to support.
  • Firefox/Spidermonkey-based: ca. 4% worldwide traffic. State-of-the-art, easy to support.
  • Safari: ca. 20% worldwide traffic. Technologically laggard, harder to support.
  • Others, including IE – ca. 3% worldwide traffic. Not implementing recent Web-APIs. Ignored here.

Tech overview

Widely supported

  • Video stream
  • Video playback – be aware of supported codecs
  • WASM
  • WebGL 1
  • Crypto – be aware of supported codecs, see https://vibornoff.github.io/webcrypto-examples/index.html
  • network: websockets, fetch, and webrtc peer-to-peer connections
  • Storage: indexeddb
  • A2HS – add to home screen (only partially on apple)
  • WebWorker, ServiceWorker
  • ES6 modules
  • Video Recording
  • WebGL 2 – (only on devices with modern hardware/drivers). Support added in latest safari

Supported, except on apple

  • WASM-threads – Atomics and Shared Buffers (requires COOP/COEP headers)
  • WebXR – partly supported/implemented in Blink/Spidermonkey including oculus. Possibly shimmable on firefox with webvr

Support, except on mobile apple and google:

  • Extensions API. Will be included in next safari release.

Under development

  • WebGPU – being developed, and behind flags, – not ready yet
  • WASM SIMD – behind flag in firefox/chrome
  • WASM GC – proposal in progress, unsure if/when implemented

Libraries and tools