Skip to content

Latest commit

 

History

History
110 lines (85 loc) · 6.41 KB

File metadata and controls

110 lines (85 loc) · 6.41 KB

Findings — Angular popularity evolution, normalized for the AI era

Generated from the notebook run on data through 2026-06-21. Every number below is reproducible from notebooks/angular_popularity_analysis.ipynb. Read the caveats at the bottom before quoting any figure.

The one-paragraph answer

Angular's absolute npm downloads kept growing (≈6.2M/week now), but its share of the Angular/React/Vue/Svelte cohort eroded steadily — from 15.2% (Jan 2020) → 12.4% (Nov 2022) → 3.5% (Jun 2026) — while React's share rose from 68.9% → 85.7%. Crucially, that erosion is a secular, AI-era trend, not something any single architectural release reversed or caused: the synthetic-control placebo (a date with no release) shows the same ~−11% underperformance as the real release dates, and ruptures finds Angular's structural breaks in 2016–2020, none near the standalone/signals/zoneless releases. The "renaissance" is real in developer sentiment (State of JS retention 42→54) but invisible in download share. The dominant force is the AI era, which structurally favors React — and Angular is the least AI-represented of the four frameworks.

1 · Trajectory & normalization

Jan 2020 Nov 2022 (AI start) Jun 2026
Angular cohort share 15.2% 12.4% 3.5%
React cohort share 68.9% 70.9% 85.7%

Current weekly downloads: React 149.9M · Vue 14.0M · Angular 6.2M · Svelte 4.8M.

Share-of-cohort CAGR by era (the "who is winning" growth rate, %):

Pre-AI growth (2020→2022) AI era (2022→2026)
Angular −27.4 −13.8
React −22.3 +32.0
Vue −27.3 +3.7
Svelte +362 −57 (small-base noise)

Angular grew in absolute terms but lost more than two-thirds of its cohort share since 2020; React absorbed essentially all net ecosystem growth in the AI era.

2 · Did the releases bend the trajectory? (causal stack)

Interrupted time series (Angular logit-share, local window, HAC errors) — trend_change = growth-rate shift:

Release trend_change p verdict
v14/v15 Standalone ≈0 / +0.004 0.99 / 0.14 no significant change
v16/v17 Signals core +0.004 / −0.000 0.035 / 0.82 no consistent change
v18→v21 (defer→zoneless) −0.005 → −0.019 <0.001 significant deceleration

CausalImpact / BSTS (Angular vs "rest of cohort" composite control, log levels, 6-wk washout; relative effect = Angular vs its counterfactual). The pre-fit correlation says whether to trust each:

Event pre-fit corr relative effect trust
v15 Standalone stable (2022-11) 0.77 −7.9% reliable
PLACEBO (2021-06, no event) 0.99 −11.9% reliable
v17 Signals/rebrand (2023-11) 0.32 +20.0% discard — Angular decoupled
v21 Zoneless default (2025-11) 0.38 −44.0% discard — Angular decoupled

Two readings, both pointing the same way:

  1. Where the counterfactual is reliable (placebo & v15), Angular underperforms its control by ~8–12% regardless of whether a release happened → the underperformance is secular, not release-triggered. No release produced a detectable positive break.
  2. From v17 on, the control stops tracking Angular (pre-fit corr collapses to ~0.3) — i.e. Angular decoupled from the rest of the cohort in the AI era. That decoupling is itself the finding; the raw v17/v21 effect sizes are not trustworthy and are reported only to show the breakdown.

Change-points (ruptures PELT, penalty sweep): 2016-10, 2018-04, 2020-03/2020-10 — Angular's early growth and its plateau. None land near the modern releases or even at the 2022 AI inflection in the deseasonalized Angular series itself; the AI-era effect shows up in share (relative to React), not in Angular's own break structure.

3 · The AI-era dimension

AI-SDK adapter adoption relative to framework size (@ai-sdk/* ÷ framework core, last 8wk):

Svelte Vue React Angular
8.28% 5.83% 4.07% 0.19%

Angular is ~20–40× under-represented in the AI tooling ecosystem relative to its own download base — and @ai-sdk/angular only shipped July 2025. Web-Bench LLM pass-rates corroborate the codegen skew: React 65% · Angular 40% · Vue 30% · Svelte 25% (ByteDance, arXiv:2505.07473), attributed to React's training-corpus volume and Angular's multi-file grammar.

AI-ramp sensitivity of each framework's share growth was statistically noisy (all p>0.17), i.e. the AI shock is largely common-mode in the share series — consistent with React's advantage operating through the level of new-project generation rather than a clean differential slope we can isolate.

4 · Cross-source triangulation

  • GitHub stars (now): React 246k · Angular 100k · Svelte 87k · Vue-core 54k. Stars (a lagging, monotonic metric) keep Angular #2, unlike download share — the gap between "accumulated mindshare" and "current flow."
  • State of JS retention: Angular bottomed at ~42% (2023, when Svelte overtook it) and rebounded to ~54% (2024) — the "renaissance" is real in sentiment. But it remained the lowest of the four, and the rebound does not appear in download share.
  • Stack Overflow usage: React ~40–45%, Angular steady ~17–18%, Vue ~15–18%, Svelte rising 3→7%.

5 · Caveats (mandatory)

  • Downloads ≠ adoption ≠ developers. npm counts are dominated by CI/CD/mirrors; no bot filtering.
  • React's share is inflated by React Native + transitive next/react-dom pulls, so 85.7% overstates "React the web framework." The cohort denominator is React-dominated; trajectory direction is robust, absolute share levels are not.
  • Observational, not causal. The v16–v17 release cluster is inseparable from the AI inflection by timing alone; CausalImpact reduces but does not remove confounding (placebo confirms residual secular drift).
  • No AI-free counterfactual — only cross-framework differences are identified, never the absolute AI effect.
  • Survey/Web-Bench values are curated snapshots, not live pulls; GitHub star history is low-resolution (unauthenticated). Multiple-comparison risk across releases × normalizations × methods is real — treat the CausalImpact backbone + placebo as the primary read and the rest as robustness.