Some results from my tests:
- exporting a Vue 3 component as a web component is seamless and is working well
- re-using a Web Component in a Vue 3 component is seamless and is working well
- composing together Web Components is more painful and requires more work as features covered by Vue 3 (e.g., reactivity, event handling) are supported by the Web Components APIs
Therefore, I suggest to:
- use Vue 3 as our front end components framework
- exporting our components as Vue 3 components to be used by extensions developing in Vue 3
- exporting our components as Web Components to be used by extensions/third parties that do not depend on Vue 3
Also, this means that using a Web Components front end library is a possibility (see the corresponding proposal)