{
  "$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"
}