AdonisJS updates logo

AdonisJS updates

Archives
Subscribe
November 14, 2025

AdonisJS v7: State of Things

Hey there,

We've been busy shipping updates to AdonisJS v7 over the last month. More than 20 releases have gone out — mostly bug fixes and internal improvements, but also some bigger features you can try today.

The breaking changes are minimal. When v7 goes public, upgrading should take just a few minutes.

What's New

Starter Kits Include Auth Flows

React and Hypermedia starter kits now come with simple login and signup pages. Just email and password — nothing fancy, but enough to get you started.

CleanShot 2025-11-13 at 18.24.14@2x.png

Read more about our starter kit philosophy →

Inertia Package Revamp

Three big improvements to the Inertia integration:

1. Transformers — Native integration with Transformers. All Inertia props can be transformers Items and Collections. Docs →

2. Shared data in middleware — Computing shared data often requires importing models or transformers. We've moved this from the config file to middleware where it belongs.

Old - Config file

export default defineConfig({
  sharedData: {
    user: (ctx) => ctx.auth?.user,
  },
})

New - Middleware

export default class InertiaMiddleware extends BaseInertiaMiddleware {
  share(ctx: HttpContext) {
    return {
      user: UserTransformer.transform(ctx.auth.user),
    }
  }
}

3. Type-safe rendering — The Inertia.render method now knows about your frontend pages and their props. We scan your frontend code and generate types automatically.

inertia-render-type-safe.png

Multi-Limiter

Implementing dual rate-limiting (like during login) is now cleaner. Release notes →

const loginLimiter = limiter.multi([
  { duration: '1 min', requests: 10, key: ipKey },
  { duration: '1 min', requests: 5, blockDuration: '20 mins', key: emailKey }
])

await loginLimiter.penalize(() => {
  return User.verifyCredentials(payload.email, payload.password)
})

VineJS v4

VineJS now supports the Standard Schema specification, plus better schema re-use with pick/omit and nullable union types. Release notes →

Coming Soon

RPC client and type-safe URL builder — Type-safe fetch API and route-based URL generation for Inertia apps. No more hardcoded URLs.

rpc_client.png

Encryption module — Support for key rotation and multiple encryption algorithms built in.

Session collection — Low-level APIs for features like "logout from all devices."

Full roadmap on GitHub →

Try It Today

AdonisJS v7 is available now to Insiders. Your feedback helps shape the final release.


That's it for this update. More coming soon.

— Harminder Virk

Don't miss what's next. Subscribe to AdonisJS updates:
Share this email:
Share on Twitter
GitHub
Twitter
Powered by Buttondown, the easiest way to start and grow your newsletter.