Would it be a lot of overhead to make each new component independent of its renderer? I could see utility in creating components that render to DOM, Canvas, WebGL, or React Native with similar behaviors and APIs. On the web side, you could even mix and match components with different renderers.
A use case I'm imagining is for ListViews. A user designing for pure performance might want a React Canvas-backed ListView, while a user with strict accessibility requirements might prefer the predictability of the DOM.
I think this is a "stretch goal," but it might be worth considering in terms of component API design.
Would it be a lot of overhead to make each new component independent of its renderer? I could see utility in creating components that render to DOM, Canvas, WebGL, or React Native with similar behaviors and APIs. On the web side, you could even mix and match components with different renderers.
A use case I'm imagining is for ListViews. A user designing for pure performance might want a React Canvas-backed ListView, while a user with strict accessibility requirements might prefer the predictability of the DOM.
I think this is a "stretch goal," but it might be worth considering in terms of component API design.