Qu'est-ce que Inertia.js et qui devrait l'utiliser ?

Topic : Programmation   | Publié il y a 2 semaines

Je suis un développeur full-stack qui développe de nombreuses applications monopages avec Laravel et Vue, ce qui est une excellente combinaison. Cependant, comme je travaille souvent seul sur ces projets, il m'arrive de ne pas voir le lien entre les deux frameworks. Par exemple, lorsque vous travaillez sur une application Laravel uniquement, il est super facile de faire passer les données des contrôleurs dans les vues Vue. Cependant, lorsque vous travaillez avec Vue pour le front-end de votre application, vous devez d'abord faire une demande à votre API, puis traiter la réponse. Et si je vous disais qu'il existe un moyen beaucoup plus simple de le faire ?

Laissez-moi vous présenter Inertia.js. Si vous n'avez jamais entendu parler d'Inertia, je ne vous en voudrai pas. La première version officielle n'existe que depuis août 2019, mais sa popularité augmente déjà très rapidement. Inertia permet aux développeurs de créer de manière transparente une connexion entre leur framework backend et frontend. L'une de ses plus grandes caractéristiques est sa grande disponibilité. Alors que je parlais d'utiliser Laravel & Vue pour mes projets, vous pouvez également utiliser Inertia lorsque vous travaillez avec Rails, React ou Svelte (et vous pouvez faire toutes les combinaisons que vous voulez). Alors, qu'est-ce qu'Inertia exactement et comment fonctionne-t-il ?

Qu'est-ce qu'Inertia ?

Inertia a été créé pour être la solution de liaison entre vos frameworks backend et frontend. Sans avoir à créer manuellement une API ou quoi que ce soit, vous pouvez maintenant facilement obtenir des données de vos modèles et contrôleurs dans vos vues. Par exemple, si vous utilisez Laravel et Vue, vous n'avez plus besoin d'installer Axios et de faire une requête à votre application Laravel. Tout ce que vous avez à faire est de spécifier le bon composant Vue et les données qui doivent être transmises dans votre contrôleur Laravel, et Inertia fera tout le travail pour vous. Vous pouvez utiliser le composant <inertia-link> pour qu'Inertia intercepte une redirection et effectue la visite via XHR à la place. Cela vous permet de créer des applications complexes d'une seule page sans les tracas qui accompagnent normalement la création de SPA modernes.

Qui peut utiliser Inertia ?

Si vous travaillez avec Laravel ou Ruby pour le côté serveur de votre application et Vue, React ou Svelte pour le côté client, alors il y a de grandes chances qu'Inertia soit exactement ce dont vous avez besoin ! En particulier lorsque vous êtes un développeur full-stack (ce qui signifie que vous travaillez des deux côtés), Inertia peut accélérer considérablement votre flux de travail, car vous n'aurez plus à construire des API REST ou GraphQL étendues ou à configurer plusieurs dépôts ou comptes d'hébergement. Inertia crée un couplage étroit entre le backend et le frontend, sans que vous ayez à faire tout le travail. Vous pouvez continuer à utiliser vos frameworks de la même manière que d'habitude et vos utilisateurs bénéficieront toujours de la même expérience SPA que si vous n'utilisiez pas Inertia.