The four frameworks

Frontend development has converged around four names: Angular, React, Vue, and Svelte. They are not the only options - HTMX, Solid, Qwik, Lit, and others all have real users - but these four are the ones you will meet first in job postings, in framework templates, in tutorials, and in production codebases.

This is a quick FYI piece, not a comparison. Each section below covers what the framework is, who built it, and what it is known for. If you want a deeper read on Angular or React, the dedicated articles are linked - and Vue and Svelte will get the same treatment in future StackNova articles.

Pick the framework whose model you like to write in. The toolchain underneath is mostly the same now.- the practical rule of thumb in 2026

Angular

Built by: Google. First released: 2010 as AngularJS; rewritten from scratch and released as Angular 2 in 2016. The modern version is just called Angular and ships a new major release roughly every six months.

What it is: a full, opinionated application framework. Angular gives you components, a template language, dependency injection, a router, a forms system, an HTTP client, testing utilities, and an end-to-end CLI - all in one package, all from one team, all designed to work together.

What it is known for:

  • TypeScript-first. Angular has been written in and for TypeScript since the 2016 rewrite. There is no "JavaScript mode."
  • Signals. A fine-grained reactivity system, added in Angular 16 and steadily expanding, that replaces the older Zone.js-based change detection for new code.
  • Dependency injection. A first-class DI container that makes services, configuration, and testing feel like a backend framework. It is one of the things Angular developers miss most when they leave.
  • The CLI is the build. ng new, ng serve, ng build, ng test, ng generate component. The CLI is the documented way to do anything, and it now runs on esbuild and Vite underneath.

Read more: What is Angular? - the full StackNova article.

React

Built by: Facebook (now Meta). First released: 2013 as an open-source library. Still maintained by Meta with a large external contributor base.

What it is: a JavaScript library for building user interfaces from composable components. React is intentionally narrow - it gives you components and state, and leaves routing, data fetching, forms, and build tooling to the surrounding ecosystem. The community fills in those slots, sometimes with a meta-framework (Next.js, Remix, React Router) that bundles a complete answer.

What it is known for:

  • JSX. A syntax extension that lets you write HTML-like markup inside JavaScript. It feels unfamiliar for a day and natural after that.
  • Hooks. The model React landed on for component state and side effects - useState, useEffect, and friends - which most other modern frameworks have since borrowed the shape of.
  • Server Components. A model for rendering components on the server with a clean handoff to client interactivity, championed by Next.js and now adopted by other meta-frameworks.
  • Ubiquity. React is the framework most large frontend codebases are written in. The hiring pool, the library ecosystem, and the body of tutorials are all the largest in the field.

Read more: What is React? - the full StackNova article.

Vue

Built by: Evan You, originally solo, now stewarded by VoidZero - the same company behind Vite, Vitest, Rolldown, and Oxc. First released: 2014.

What it is: a progressive framework for building user interfaces. "Progressive" is the keyword: Vue is designed to be adopted incrementally - drop it into one page for some interactivity, or use it as the foundation for a full single-page application. Sitting between Angular's everything-included posture and React's minimalist library posture, Vue tends to be the framework people describe as "the one that felt friendly."

What it is known for:

  • Single-file components (SFCs). A .vue file holds the template, the script, and the styles for one component in one file - cleanly separated, but co-located.
  • The Composition API. Vue's answer to component logic reuse, conceptually similar to React Hooks but with Vue's own reactivity primitives (ref, reactive, computed, watch) underneath.
  • Templates with directives. Standard HTML enhanced with attributes like v-if, v-for, and v-model - a different mental model from JSX, and the one many designers and HTML-first developers prefer.
  • The official ecosystem. Vue Router, Pinia (state management), and Nuxt (the meta-framework) all come from the core team, so the canonical way to do each common task is well-documented.
<!-- A single-file component, one file, three blocks -->
<script setup>
import { ref } from "vue";
const count = ref(0);
</script>

<template>
  <button @click="count++">Count: {{ count }}</button>
</template>

<style scoped>
button { padding: 8px 14px; }
</style>

Read more: What is Vue? - the full StackNova article.

Svelte

Built by: Rich Harris, originally at The New York Times, now at Vercel. First released: 2016, with major rewrites for Svelte 3 (2019) and Svelte 5 (2024).

What it is: a frontend framework that takes a different bet on where the work should happen. Instead of shipping a runtime that interprets your components in the browser, Svelte is a compiler: it reads your component files at build time and emits small, surgical, vanilla JavaScript that updates the DOM directly. There is no virtual DOM. The framework, in its traditional sense, mostly disappears from the runtime.

What it is known for:

  • Compile-time framework. The unusual idea that gets the most attention - your components are transformed into imperative JavaScript at build time, leaving a tiny runtime footprint and very fast updates.
  • Runes. Svelte 5's reactivity primitives - $state, $derived, $effect - that make the reactive model explicit and align it with how other modern frameworks expose signals.
  • SvelteKit. The official meta-framework, built on Vite, that handles routing, server-side rendering, data loading, and deployment. SvelteKit is to Svelte what Next.js is to React.
  • Approachable syntax. Component files look like enhanced HTML with a <script> block - close enough to vanilla web that the ramp-up is short, especially for developers coming from HTML and CSS rather than from JavaScript frameworks.
<!-- A Svelte 5 component using runes -->
<script>
  let count = $state(0);
</script>

<button onclick={() => count++}>
  Count: {count}
</button>

Read more: What is Svelte? - the full StackNova article.

What they share

The four frameworks have more in common than the framework wars of the 2010s would suggest.

  • Component-based. All four organize a UI as a tree of small, reusable, encapsulated components.
  • Reactive. All four have a reactivity model - you change some state, and the parts of the UI that depend on it update. The exact primitives differ (Angular signals, React hooks, Vue refs, Svelte runes), but the shape is recognizably the same.
  • TypeScript-friendly. All four ship first-class TypeScript support. New projects in any of them default to TypeScript more often than not.
  • The same toolchain underneath. Angular, React, Vue, and Svelte all build on Vite and esbuild in their modern starter templates - Angular through its CLI, the other three through direct Vite templates. The story for "what tools does a frontend project use" is mostly framework-independent now.
  • A meta-framework alongside. Each has an official or de-facto meta-framework that adds routing, SSR, and data loading - Angular's CLI templates, Next.js or Remix for React, Nuxt for Vue, SvelteKit for Svelte.

Where to read more

StackNova articles for going deeper on the two we have written so far:

  • What is Angular? - the full picture of Angular, its CLI, signals, and the modern build pipeline.
  • What is React? - the library, the hooks model, and where it sits in the ecosystem.
  • What is Vue? - the progressive framework, single-file components, and the Composition API.
  • What is Svelte? - the compile-time framework, runes, and SvelteKit.
  • What web developers need to know in 2026 - the broader toolchain context: esbuild, Vite, TypeScript, and Aspire, with frameworks sitting on top.

The full deep-dive set for the framework layer.