JSFiddle - React, Tailwind, and code Playground

HTML

<script src="https://unpkg.com/vue@next"></script>
<div id="app">
  <button @click="$counter.increment()" type="button">
    {{ $counter.value }}
  </button>
</div>

JavaScript

const app = Vue.createApp({
	mounted() {
  	console.log({ counter: this.$counter });
  },
});

app.use({
	install(app) {
  	app.config.globalProperties.$counter = Vue.createApp({
    	data: () => ({ value: 1 }),
      methods: {
      	increment() { this.value++ }
      }
    }).mount(document.createElement('div'));
  }
})

app.mount('#app');