Vue.js is a progressive JavaScript framework for building user interfaces. "Progressive" means you can adopt it incrementally — drop it into one part of a page, or use its full ecosystem to build a complete single-page app.
A minimal component
<script setup>
import { ref } from "vue";
const count = ref(0); // reactive state
</script>
<template>
<button @click="count++">Count is {{ count }}</button>
</template>
This single-file component bundles logic (), markup (), and (optionally) styles () together — clicking the button updates , and Vue automatically re-renders the text.
