Chapter 5 of 6

Where we are now

The toolchain is faster, more integrated, and mostly written in Rust or Go. Three orgs own most of it. CRA is gone — and the old React Native architecture is gone too.

Three centers of gravity

VoidZero

Vite · Rolldown · Oxc · oxlint

The Vite ecosystem is now a full pipeline. Vite 8 (March 2026) made Rolldown the default bundler; Oxc handles parsing, transforms, and minification inside it; oxlint offers a fast lint path. A Rust port of React Compiler is being integrated natively into Oxc (draft PR), which would complete the fully native pipeline.

Vercel

Next.js · Turbopack · SWC

Next.js 16 (October 2025) made Turbopack the stable default for dev and production. Turbopack's incremental model only recomputes changed modules, keeping large-project builds fast. SWC handles compilation; React Compiler support is stable and opt-in. A separate stack from Vite/Rolldown.

Meta

React · React Compiler · Metro · Hermes

React Compiler 1.0 (October 2025) auto-memoizes components at build time. A Rust port is now in active development (facebook/react #36173): all 1,725 fixtures pass, and OXC is already integrating it. On mobile, Metro bundles and Hermes V1 (default since RN 0.84) runs the JS with bytecode compilation.

What changed recently
  1. Feb 2025Create React App officially deprecated. The React team points new projects to Vite, Parcel, or a framework.
  2. Jun 2025oxlint 1.0 stable. 50–100× faster than ESLint with 500+ compatible rules.
  3. Oct 2025React Compiler 1.0 and Next.js 16 both ship. Turbopack becomes the default in Next.js; React Compiler works on React 17+.
  4. Mar 2026Vite 8 ships with Rolldown as the default bundler, replacing the old esbuild and Rollup split.
  5. May 2026Rolldown 1.0 stable.
  6. May 2026Meta opens a draft PR porting React Compiler to Rust (facebook/react #36173). All 1,725 test fixtures pass. OXC opens a parallel draft PR to integrate it natively. When stable, the full Vite pipeline gets a native React Compiler with no Babel plugin needed.
  7. 2026TypeScript 7 beta ports the compiler to Go (tsgo), often 10× faster than tsc. React Native 0.84 makes Hermes V1 the default engine.
The big shift

Same jobs, native implementations

Then · 2015–2020
Now · 2025–2026
BabelJS transform
Oxc / SWCRust transform
WebpackJS bundle
Rolldown / TurbopackRust bundle
ESLintJS lint
oxlintRust lint
tscTS type-check
tsgoGo type-check

The pattern is clear: rewrite slow JavaScript tools in Rust or Go, then wire them into a single pipeline so you install fewer packages and wait less at build time.

The converging Vite pipeline

When the React Compiler Rust integration into Oxc stabilizes, the full Vite pipeline will be native end-to-end — no Babel step required.

ParseOxc
TransformOxc
React CompilerRust · draft
BundleRolldown
MinifyOxc
Outputbrowser

Dashed step = in progress (oxc-project/oxc #22942). Everything else is shipping today.

What I'd pick in 2026
New SPA?
Vite + React. Add oxlint for fast linting. Enable React Compiler for automatic memoization.
Full-stack web?
TanStack Start or React Router 7. Both use Vite, so you keep one fast toolchain end to end.
Mobile?
Expo + React Native. Metro and Hermes are built in.
Still on CRA?
Migrate to Vite. The React team has a guide — CRA still works but gets no new features.

A note on bias: these are my own opinionated picks, shaped by a personal preference for portable, vendor-neutral tooling — not objective verdicts. Every project has different constraints, so treat this as a starting point and do your own research before you commit.

That's the 2026 picture. The final chapter links to every primary source: official announcements, docs, and draft PRs cited throughout this guide.