Compatibility
The maintained compatibility surface is:
| Layer | Supported versions |
|---|---|
| PHP | 8.3, 8.4, 8.5 |
| Laravel | 12, 13 |
| React | 19.1 or newer within React 19 |
| Inertia server adapter | inertiajs/inertia-laravel 2.0.5+ or 3.x |
| Inertia React adapter | @inertiajs/react 2.3.18+ or 3.x |
| Protocol | draft 0.1.2 |
Match server and client Inertia majors
Section titled “Match server and client Inertia majors”Use one of these pairs:
| Laravel adapter | React adapter | Status |
|---|---|---|
| 2.x | 2.x | Supported |
| 3.x | 3.x | Supported |
| 2.x | 3.x | Not supported |
| 3.x | 2.x | Not supported |
The adapter packages may have different minor or patch numbers, but their major generations must match. InertiaX verifies both generations through adapter tests, a live Laravel workbench, and an isolated packed full-stack consumer.
Package versions are independent
Section titled “Package versions are independent”Do not expect @inertiax/react, @inertiax/core, and the Laravel package to share a version. Each
artifact advances only when its own public behavior changes. Internal npm dependencies use
compatible ranges, and the envelope declares its protocol version explicitly.
When upgrading, check both:
- the package’s own changelog or release notes;
- the protocol reference if the release changes the wire contract.