Skip to main content

Overview

vinext implements approximately 94% of the Next.js 16 API surface with full or partial support. The remaining gaps are intentional stubs for deprecated features and edge cases.
Legend:
  • βœ… = Full implementation
  • 🟑 = Partial (runtime behavior correct, some build-time optimizations missing)
  • ⬜ = Intentional stub/no-op

Module Shims

Every next/* import is shimmed to a Vite-compatible implementation.

Core Modules

Fonts and Assets

Cache and State

Legacy and Utility

Routing Features

Server Features

Rendering

Data Fetching

Metadata

Other Server Features

Configuration

Caching

The cache is pluggable. The default MemoryCacheHandler works out of the box. For production, use a custom backend:
The CacheHandler interface matches Next.js 16’s shape, so community adapters should be compatible.

Test Coverage

vinext’s API compatibility is verified by:
  • 1,700+ Vitest tests β€” Unit and integration tests
  • 380+ Playwright E2E tests β€” Browser-based testing
  • Tests ported from Next.js β€” Direct compatibility verification
  • OpenNext conformance suite β€” Cloudflare deployment behavior
See the test tracking document for detailed results.
For features not supported, see the Known Limitations page.