// the find
NervJS/nerv
A blazing fast React alternative, compatible with IE8 and React 16.
Nerv is a virtual-DOM library from JD.com that mimics the React 16 API closely enough to be swapped in via a webpack/babel alias, promising a smaller footprint and IE8 support. It's aimed at teams running legacy IE8 targets or wanting to shave bundle size off an existing React app without rewriting components.
Genuinely drop-in for a lot of React 16-era code via module aliasing, so migration cost is low if your code doesn't touch React internals. 9KB gzipped is a real size win over react+react-dom. It wasn't a toy project - JD.com and TOPLIFE ran it in production, which is a more convincing signal than most framework-alternative repos get. The monorepo also ships the supporting cast you'd actually need (redux bindings, SSR package, devtools, test utils) instead of just the core renderer.
Dead project - last push was 2021-03-29, so it predates hooks maturing fully in the ecosystem and every React feature shipped since (concurrent rendering, Suspense for data fetching, Server Components). IE8 compatibility is now pure dead weight; nobody evaluating this in 2026 needs it, and it's the thing that shaped a lot of the architecture. The alias-swap trick is fragile: any dependency that pokes at React's Fiber internals, uses react-dom/client, or expects modern React's reconciler semantics will break in ways that are hard to debug. Preact solved the same 'smaller React-like library' problem and is still actively maintained with a real ecosystem, which makes this a hard sell over just using that.