Vue

The progressive JavaScript framework for building fast, reactive user interfaces.

Framework
npm
v3.5.44
54,798 stars
MIT License

Repository Health

Pre-computed score based on development activity, maintenance, community, maturity, and trend momentum. How we score it →
95 /100 Excellent
Development Activity 100
Maintenance 96
Community 84
Maturity 60
Momentum 40

Technical Analysis

AI-assessed by reading the actual repository — architecture, code quality, innovation, and documentation. How we score it →
93 /100 Excellent
Architecture 92
Code Quality 94
Innovation 90
Learning Curve 95

Vue (published to npm as vue, developed at github.com/vuejs/core) is a progressive JavaScript framework for building user interfaces on the web. It layers an approachable, template-driven core for simple pages on top of a fully typed Composition API for scaling up to large single-page applications, and it can be adopted incrementally — dropped into a page via a script tag or driven through a full build pipeline with single-file components.

The framework ships as a coordinated monorepo of packages: a standalone fine-grained reactivity system, a template compiler that produces optimized render functions, a platform-agnostic virtual-DOM runtime, and a server-renderer for SSR/SSG. Official companion libraries (Vue Router, Pinia, Vite tooling) extend it into a complete application stack without pulling third-party routing or state management into the core.

What You Get

  • A fine-grained reactivity system (reactive(), ref(), computed(), watch()) that tracks dependencies at the property level via Proxies, so only the DOM that actually changed re-renders.
  • Single-file components (.vue) compiled by @vue/compiler-sfc, combining template, script (Options API or <script setup> Composition API), and scoped styles in one file with full TypeScript inference.
  • A platform-agnostic virtual-DOM runtime (runtime-core + runtime-dom) with a createApp() API for plugins, mixins, directives, provide/inject dependency injection, and lifecycle hooks.
  • First-class server-side rendering and hydration via @vue/server-renderer, plus a template compiler that emits highly optimized render functions with static hoisting and patch-flag diffing.
  • An official ecosystem — Vue Router for navigation, Pinia for state management, and Vite-based tooling — maintained alongside the core so routing and state aren’t left to the community to standardize.

Common Use Cases

  • Building single-page applications with client-side routing and centralized state, using Vue Router and Pinia alongside the core reactivity and component model.
  • Progressively enhancing server-rendered pages by mounting Vue components into specific DOM elements without a full SPA build pipeline.
  • Server-side rendering and static site generation for content-heavy or SEO-sensitive sites, via @vue/server-renderer or meta-frameworks like Nuxt that build on Vue core.
  • Authoring reusable, typed UI component libraries with <script setup> and the Composition API for consumption across multiple applications.

Under The Hood

Architecture Vue Core is organized as a pnpm monorepo of tightly coupled packages under packages/: reactivity implements fine-grained dependency tracking through Proxy-based reactive()/ref() and a doubly-linked-list subscriber graph in effect.ts; compiler-core/compiler-dom/compiler-sfc/compiler-ssr parse templates into an AST (parser.ts, ast.ts) and transform/codegen them into render functions, with compiler-sfc additionally handling <script setup> compilation and scoped CSS; runtime-core/runtime-dom/runtime-test implement a platform-agnostic virtual-DOM renderer, component instance lifecycle, and the public createApp() API in apiCreateApp.ts; server-renderer renders component trees to HTML strings/streams for SSR; and shared holds cross-package utilities. The runtime consumes compiler output and reactivity effects together — component re-renders are scheduled reactive effects (scheduler.ts) triggered when tracked reactive state changes.

Tech Stack The codebase is ~97% TypeScript, built with Rollup (rollup.config.js, rollup.dts.config.js for bundled .d.ts output), tested with Vitest across unit, e2e, and browser projects, linted with ESLint and formatted with Prettier, and enforces both via simple-git-hooks + lint-staged pre-commit checks and a commit-message validator (verify-commit.js). The workspace is managed by pnpm 11 across 12 packages, with releases cut through a custom scripts/release.js and changelog generated via conventional-changelog.

Code Quality The repo carries 206 test files and roughly 3,962 individual test cases colocated under each package’s __tests__ directory, covering reactivity edge cases, compiler output snapshots, and runtime DOM behavior. Core internals like effect.ts use documented bitflag enums (EffectFlags) and a linked-list Subscriber/Link structure with JSDoc explaining the tracking algorithm, and public-API files follow a consistent apiXxx.ts naming convention that makes the framework’s exported surface easy to audit.

API Design Vue exposes two complementary authoring styles from the same runtime: the Options API (data/computed/methods, defined in componentOptions.ts) for approachable, self-contained components, and the Composition API (apiComputed.ts, apiWatch.ts, apiInject.ts, apiSetupHelpers.ts) for composing and reusing stateful logic across components, both fully typed through defineComponent/defineProps generics. A minimal app only needs createApp(App).mount('#app'), and <script setup> SFCs let compiler-sfc infer prop and emit types with almost no boilerplate.

Used by 75 apps in this directory

PHP
63%
Other

BillaBear

Ecommerce · Invoicing Finance

760

Self-hostable subscription management and billing platform with Stripe integration, tax automation, configurable workflows, and Twig-based document generation.

View details
73
Repo Health
66
Technical
65
Dependency
Built with
PHP 63%
Vue 18%
Gherkin 13%
Updated 1 months ago
Go
92%
AGPL 3.0

BillionMail

Marketing

15,947

Self-hosted email server and marketing platform that gives you unlimited sending, full deliverability control, and AI-assisted campaigns without monthly fees.

View details
52
Repo Health
74
Technical
70
Dependency
Built with
Go 92%
Updated 4 months ago
Go
49%
MIT

Bytebase

Devops

14,625

An open-source database CI/CD and DevSecOps platform — schema migration review, GitOps-driven changes, data masking, and access control across MySQL, PostgreSQL, Oracle, Snowflake, MongoDB, and more.

View details
92
Repo Health
73
Technical
68
Dependency
Built with
Go 49%
TypeScript 43%
Updated 1 weeks ago
Ruby
51%
Other

Chatwoot

Customer Support

38,155

Open-source omnichannel customer support platform with AI-powered agents, live chat, and self-hosting — a full Intercom and Zendesk alternative.

View details
95
Repo Health
78
Technical
66
Dependency
Built with
Ruby 51%
Vue 25%
JavaScript 22%
Updated 6 days ago
JavaScript
90%
Other

CodeSandbox

Code Editors · Developer Tools

13,652

Instantly ready browser-based IDE that runs full npm dependency resolution and transpilation entirely client-side, with no server needed.

View details
67
Repo Health
76
Technical
63
Dependency
Built with
JavaScript 90%
Updated 1 weeks ago
TypeScript
45%
Other

Convex Backend

Databases · Developer Tools

12,754

Open-source reactive database that lets developers build live-updating apps with pure TypeScript, strong consistency, and real-time subscriptions—no separate API layer required.

View details
88
Repo Health
82
Technical
65
Dependency
Built with
TypeScript 45%
Rust 43%
Updated 6 days ago
Go
63%
Apache 2.0

Coroot

Analytics · Monitoring

7,982

eBPF-powered observability with AI root cause analysis — zero code changes required, full-stack visibility out of the box.

View details
88
Repo Health
80
Technical
66
Dependency
Built with
Go 63%
Vue 35%
Updated 1 weeks ago
PHP
78%
Other

Craft CMS

CMS

3,620

A developer-first PHP CMS with clean-slate content modeling, auto-generated GraphQL API, and a four-tier edition system that scales from solo projects to enterprise deployments.

View details
96
Repo Health
83
Technical
62
Dependency
Built with
PHP 78%
JavaScript 14%
Updated 6 days ago
PHP
48%
AGPL 3.0

Crater

Invoicing Finance

8,355

Open source invoicing and billing platform for freelancers and small businesses — create estimates, track expenses, accept Stripe payments, and run recurring invoices from your own server.

View details
54
Repo Health
68
Technical
66
Dependency
Built with
PHP 48%
Vue 40%
Updated 2 years ago

Join founders buildingwith open source

Opinionated takes, migration guides, cost-saving tips, and insights from the open source ecosystem.

Subscribe on Substack
Join 750+ subscribers