Présentation sur htmx lors de l'OSXP 2023

Par: Abilian 07/12/2023 Collaboration Tous les articles

Embrasser la modernité du Web avec htmx et les applications hypermédia

Dans le domaine en pleine évolution du développement web, la recherche de la simplicité et de l'efficacité est constante.

Lors de la conférence OSXP 2023, Stefane Fermigier, fondateur de la société Abilian, a présenté une perspective rafraîchissante sur le développement d'applications web à l'aide de la bibliothèque htmx, basée sur les principes de l'hypermédia. Nous en donnons un résumé dans ce post.

Ou voir ces slides en HTML.

L'avènement de htmx : Une approche simplifiée du développement web

Développée par Carson Gross en 2020, htmx est une bibliothèque JavaScript légère (15 Ko compressés) qui vise à simplifier la création d'applications hypermédias (HDA). Cet outil innovant s'attaque aux limites du développement web traditionnel (hors utilisation du JavaScript côté client) en permettant à n'importe quel élément de faire des requêtes HTTP, en permettant à n'importe quel événement de déclencher ces requêtes, et en offrant plus de flexibilité dans les méthodes HTTP et les mises à jour de pages.

Lors de la présentation, htmx a fait l'objet d'une attention particulière. Parmi ses distinctions récentes, il figure sur le radar technologique de Thoughtworks de septembre 2023 et a été "primé" comme le framework JavaScript de l'année par la chaîne YouTube Fireship en décembre 2023.

L'évolution des technologies Web : un retour au futur (l'hypermédia)

La présentation de S. Fermigier a adopté une approche historique, retraçant l'évolution des technologies web depuis les premiers jours des webmasters jusqu'à l'essor des SPA (applications à page unique). Il a souligné le passage à HTML5, CSS3 et ES5 et la dépendance croissante des API JSON dans les frameworks web traditionnels. Cette évolution a conduit à un paysage web complexe, suscitant la question suivante : "Est-il temps de revenir à l'hypermédia ?"

Systèmes hypermédias et htmx : une relation synergique

Un système hypermédia implément les principes "REST" de la thèse de Roy Fieldings. S'agit d'être "RESTful", mais dans un sens plus précis qu'une simple API JSON. Il s'agit de tirer parti de l'hypermédia en tant que moteur de l'état de l'application (HATEOAS). htmx répond élégamment aux limites de l'hypermédia traditionnel en permettant davantage d'éléments interactifs, divers déclencheurs d'événements, des méthodes HTTP étendues et des mises à jour sélectives de la page.

Applications pratiques : démonstration de htmx en action

S. Fermigier a présenté divers exemples côté serveur et côté client, illustrant les capacités de htmx. De l'amélioration des fonctionnalités de recherche à l'intégration dans des projets en cours, la polyvalence de htmx a été mise en évidence. Des études de cas réels, comme Contexte ou OpenUnited, ont montré des réductions significatives de la taille de la base de code et une augmentation de la vitesse de développement, ce qui confirme l'intérêt pratique de htmx.

Quand utiliser (ou ne pas utiliser) les hypermédias et htmx ?

Si htmx est idéal pour les sites à faible interactivité, le traitement côté serveur et les transferts de données à grande échelle, il peut ne pas convenir à des interfaces très dynamiques ou à des applications nécessitant des mises à jour rapides et dynamiques. S. Fermigier conseille d'utiliser judicieusement les principes de l'hypermédia en tenant compte de la complexité de l'application et des exigences fonctionnelles en matière d'interactivité.

L'avenir du htmx et de l'hypermédia dans le développement Web

La présentation s'est achevée sur une vision optimiste du rôle de htmx et de l'hypermédia dans le développement moderne du web. Soulignant leur potentiel pour équilibrer les performances, la simplicité et l'évolutivité, S. Fermigier a invité le public à explorer les possibilités du htmx et de l'hypermédia dans ses projets.

Conclusion et résumé

La présentation de Stefane Fermigier à OSXP 2023 a fourni un aperçu complet des applications hypermédia et du projet htmx, soulignant leur potentiel pour rationaliser et simplifier le développement web. Alors que le web continue d'évoluer, des outils comme htmx offrent une voie prometteuse vers un mode de développement des applications web plus efficaces.

-> voir ces slides en HTML.