Overview of @adonisjs/inertia architectural decisions
5.xThe @adonisjs/inertia repository maintains Architecture Decision Records (ADRs) to document the design choices made for the official Inertia.js adapter for AdonisJS. These records explain the context, options considered, and the consequences of specific architectural decisions.
While ADRs are primarily intended for core maintainers, they provide insight into how the adapter handles core features like:
- Prop Management: Symbol-tagged prop wrappers, lazy shared-state providers, and top-level-only prop resolution.
- Middleware & State: Shared props via middleware, per-request Inertia instances, and redirect/version-mismatch semantics.
- Rendering & Assets: Edge as the root-view layer, asset versioning via Vite manifest hashes, and SSR support.
- Data & Types: Serialization via
@adonisjs/coretransformers, page-prop type safety via module augmentation, and multiple errors per field. - Advanced Features: Infinite scroll, first-class flash messages, and rescued deferred props.