Experimental Web Platform Features
This is a list of web platform features that have a partial implementation in Servo and are gated behind an optional preference.
The following features are enabled by the experimental rendering mode or --enable-experimental-web-platform-features flag.
| Feature | Tracking issue | Preference |
|---|---|---|
| CSS Font Loading API | #29376 | dom_fontface_enabled |
| CSS Grid | #34479 | layout_grid_enabled |
| CSS Multicol | #22397 | layout_columns_enabled |
| Clipboard API | #36084 | dom_async_clipboard_enabled |
| IntersectionObserver | #35767 | dom_intersection_observer_enabled |
| Navigator.registerProtocolHandler() | #40615 | dom_navigator_protocol_handlers_enabled |
| Navigator.sendBeacon() | #38302 | dom_navigator_sendbeacon_enabled |
| Notification API | #34841 | dom_notification_enabled |
| OffscreenCanvas | #34111 | dom_offscreen_canvas_enabled |
| Permissions API | #31235 | dom_permissions_enabled |
| Variable fonts | #38800 | layout_variable_fonts_enabled |
| WebGL2 | #41394 | dom_webgl2_enabled |
| WebGPU | #24706 | dom_webgpu_enabled |
The following features are disabled by default but can be toggled with a command line flag (e.g. --pref dom_webgpu_enabled).
| Feature | Tracking issue | Preference |
|---|---|---|
| Adopted Stylesheet | #38132 | dom_adoptedstylesheet_enabled |
| CSS writing modes | #2560 | layout_writing_mode_enabled |
| CookieStore | #37674 | dom_cookiestore_enabled |
| Credential Management API | #38788 | dom_credential_management_enabled |
| Geolocation API | #38903 | dom_geolocation_enabled |
| IndexedDB | #6963 | dom_indexeddb_enabled |
| Media Capture and Streams API | #26861 | dom_canvas_capture_enabled |
| ServiceWorker | #36538 | dom_serviceworker_enabled |
| VisualViewport | #41341 | dom_visual_viewport_enabled |
| WebRTC | #41396 | dom_webrtc_enabled |
| WebRTC Transceiver | #41396 | dom_webrtc_transceiver_enabled |
| WebVTT | #22312 | dom_webvtt_enabled |
| WebXR Layers | #27468 | dom_webxr_layers_enabled |
Enabled web platform features
This is a list of web platform features with an implementation that is complete enough to enable by default.
However, they can still be disabled with an optional preference (e.g. --pref dom_webgpu_enabled=false).
| Feature | Tracking issue | Preference |
|---|---|---|
| AbortController | #34866 | dom_abort_controller_enabled |
| CSS Flexbox | #12453 | layout_flexbox_enabled |
| Gamepad API | #10977 | dom_gamepad_enabled |
| MutationObserver | #6633 | dom_mutation_observer_enabled |
| ResizeObserver | #39790 | dom_resize_observer_enabled |
| WebCrypto API | #40687 | dom_crypto_subtle_enabled |