Vue.js is an open-source frontend JavaScript framework originally created by Evan You and now maintained by an independent open-source community. It's the #8 most-used web framework overall, reported in roughly 17.6% of developer surveys. Developers reach for it because it's designed to be adopted incrementally โ you can sprinkle it onto a single page or scale it up to a full single-page application โ with a gentler learning curve than React or Angular.
A Vue 3 single-file component using the <script setup> syntax combines reactive state, logic, and a template in one .vue file.
<!-- Counter.vue -->
<script setup>
import { ref, computed } from 'vue'
const count = ref(0)
const doubled = computed(() => count.value * 2)
function increment() {
count.value++
}
</script>
<template>
<button @click="increment">
Count: {{ count }} (doubled: {{ doubled }})
</button>
</template>
Scaffold a new Vue 3 project with the official Vite-based create tool, then start the dev server.
# scaffold a new Vue project
npm create vue@latest my-app
# install deps and start the dev server
cd my-app
npm install
npm run dev