Intent to Prototype: NativeIO

251 views
Skip to first unread message

Emanuel Krivoy

unread,
Oct 28, 2020, 1:24:28 PM10/28/20
to blin...@chromium.org

Contact emails

five...@chromium.orgrs...@chromium.org

Explainer


https://github.com/fivedots/nativeio-explainer

Specification

None

Summary

NativeIO is a storage API that resembles a very basic filesystem, with direct access to stored data through buffers and offsets. Our goal is to give developers flexibility by providing generic, simple, and performant primitives upon which they can build higher-level components. It's particularly well suited for Wasm-based libraries and applications that want to use custom storage algorithms to fine-tune execution speed and memory usage.



Blink component

Blink>Storage

Motivation

A generic, performant and low-level storage API would enable web developers to create or port storage libraries that offer the right guarantees and interface for their application. Pushing the storage layer onto the client-side allows developers to rely on interfaces that are cross-platform and widens the possible APIs from the ones currently provided by the Web Platform to the ones that could be ported or created.



Initial public proposal

https://discourse.wicg.io/t/proposal-nativeio/4967

Search tags

storagenativeioperformancelow-levelgeneric

TAG review

https://github.com/w3ctag/design-reviews/issues/566

TAG review status

Pending

Risks



Interoperability and Compatibility

This new feature has some potential interoperability risks due to its nature as a novel and low-level API. Currently, there are no web features that expose such a generic interface and that focus on WebAssembly ports as one of it's main consumers.



Gecko: No signal

WebKit: No signal

Web developers: No signals


Will this feature be supported on all six Blink platforms (Windows, Mac, Linux, Chrome OS, Android, and Android WebView)?

Yes


Is this feature fully tested by web-platform-tests?

Yes

Tracking bug

https://bugs.chromium.org/p/chromium/issues/detail?id=914488

Launch bug

https://bugs.chromium.org/p/chromium/issues/detail?id=1143306

Link to entry on the Chrome Platform Status

https://chromestatus.com/feature/5670244905385984

This intent message was generated by Chrome Platform Status.
Reply all
Reply to author
Forward
0 new messages