{
"$type": "site.standard.document",
"bskyPostRef": {
"cid": "bafyreiebtppknjig4qaznzpox2y35653i5p6ib2ccojszrq3w2zy2xrksm",
"uri": "at://did:plc:5sgu76a53rz3n6unbykmovqy/app.bsky.feed.post/3mlpojm7a44r2"
},
"description": "Vue.js is a progressive JavaScript framework for building user interfaces, created by Evan You in 2014. Vue is designed to be incrementally adoptable: it can drop into a single page or anchor an entire application, and it borrows ideas from React (component model, virtual DOM) and Angular (templates, directives) while keeping the API approachable.\n\n\nCore ideas\n\n * Single-file components (.vue). Template, script, and style co-located in one file.\n * Reactivity. Refs and reactive proxies (Vue 3) a",
"path": "/engineering-glossary/vue-progressive-framework/",
"publishedAt": "2026-05-19T00:00:00.000Z",
"site": "https://sahilkapoor.com",
"tags": [
"React",
"Angular",
"Svelte",
"Nuxt",
"Vite"
],
"textContent": "**Vue.js** is a progressive JavaScript framework for building user interfaces, created by Evan You in 2014. Vue is designed to be incrementally adoptable: it can drop into a single page or anchor an entire application, and it borrows ideas from React (component model, virtual DOM) and Angular (templates, directives) while keeping the API approachable.\n\n## Core ideas\n\n * **Single-file components (.vue).** Template, script, and style co-located in one file.\n * **Reactivity.** Refs and reactive proxies (Vue 3) automatically re-render the UI when state changes.\n * **Composition API.** Function-based composition (similar in spirit to React hooks); the recommended approach for new Vue 3 code.\n * **Options API.** Class-like alternative; still supported for legacy familiarity.\n * **Template syntax.** Directives like `v-if`, `v-for`, `v-model`; built-in two-way binding for forms.\n\n\n\n## Common ecosystem\n\n * **Framework:** Nuxt (full-stack, SSR / SSG)\n * **State management:** Pinia (the modern Vuex)\n * **Routing:** Vue Router\n * **Build tool:** Vite (created by Evan You, default for Vue projects)\n * **UI libraries:** Vuetify, Element Plus, Naive UI, PrimeVue, Quasar\n\n\n\nš\n\n**Related Terms**\nReact, Angular, Svelte, Nuxt, Vite.",
"title": "Vue.js",
"updatedAt": "2026-05-13T19:13:56.047Z"
}