Feu
Track Dev
FR

Inertia.js, la pierre philosophale du monolithe moderne ?

L'expérience d'une SPA sans construire deux applications. Et ce que ce choix coûte vraiment.

Présentée par

Construire une interface moderne conduit souvent à séparer le frontend du backend. Apparaissent alors une API dédiée aux écrans, un second routeur, une nouvelle gestion des erreurs, des validations à synchroniser et un état client qui ne cesse de grandir.

Et si nous pouvions obtenir l’expérience d’une SPA sans commencer par construire deux applications ?

Dans ce talk à deux voix, les frères Barry partiront à la recherche d’une autre formule : Inertia.js v3.

Nous construirons avec Laravel et React une application musicale moderne : navigation instantanée, layout persistant, formulaires, recherche, pagination infinie, données différées, prefetching et mises à jour optimistes. Pourtant, les routes, les contrôleurs, l’authentification, les autorisations, les validations et l’accès aux données resteront entièrement pilotés par Laravel.

Nous ouvrirons ensuite la boîte noire pour découvrir qu’Inertia n’est ni un framework frontend ni une fonctionnalité propre à Laravel. C’est un protocole qui relie un backend classique à des pages écrites en React, Vue ou Svelte. Laravel sera utilisé pour nos démonstrations, mais le même modèle peut être implémenté avec Rails, Phoenix, Django et de nombreux autres environnements.

Nous verrons comment Inertia transforme une première réponse HTML en application navigable côté client, comment les pages et leurs props voyagent à travers le protocole, et comment sa troisième version rend cette expérience encore plus fluide grâce aux instant visits, aux deferred props, au prefetching, aux optimistic updates et à une meilleure gestion du cache.

Mais toute transmutation exige un échange équivalent. Nous terminerons donc par les limites de cette architecture : couplage entre frontend et backend, maturité variable des adaptateurs, applications multi-clients, besoins offline et situations dans lesquelles une véritable API reste le meilleur choix.

Inertia.js n’est pas une solution miracle. C’est peut-être quelque chose de plus utile : un protocole simple qui permet à chaque partie de notre stack de faire ce qu’elle sait déjà bien faire.

Dans le même parcours

À voir aussi