Just as a side note: there is already a way to consume vue components in a server agnostic way - build a web component, which vue cli3 supports. I think bowsers compatibly aside, that’s the right approach.
"Sometimes you have to work with the tools you have, not the ones you want"