Ce billet explore le pattern Backend-for-Frontend (BFF), une solution architecturale pour les applications modernes où plusieurs frontends (web, mobile, TV) consomment les mêmes services backend. Le BFF agit comme une couche de traduction dédiée à chaque client, agrégeant les appels API, transformant les données et gérant la logique spécifique (cache, authentification, etc.), le tout possédé et maintenu par l’équipe frontend.
Les signes qu’un BFF pourrait être utile incluent des problèmes de performance (appels multiples, sur/sous-récupération de données), une lenteur de développement (dépendances entre équipes, duplication de logique) ou des frictions organisationnelles (API mal adaptées aux besoins UX). Le BFF permet d’aligner les priorités des équipes, d’améliorer les performances (notamment sur mobile) et d’accélérer la livraison de fonctionnalités.
Cependant, le BFF n’est pas une solution universelle : il ajoute de la complexité opérationnelle et peut être excessif pour des applications simples ou des petites équipes. Des alternatives existent (GraphQL, API Gateway, refonte backend). L’article souligne l’importance d’un pilote pour évaluer son impact avant une adoption large, et rappelle que le succès dépend d’une appropriation par les équipes frontend et d’une approche itérative.
L’article Frontend coding with GPT-5 du Cookbook OpenAI illustre comment GPT-5 révolutionne le développement frontend en générant des applications complètes, en réalisant des refactoring complexes ou des modifications précises dans des codebases existantes, le tout en une seule itération. Le guide met en avant des principes efficaces et recommande des bibliothèques (Next.js, React, Tailwind CSS, shadcn/ui, Radix Themes, etc.) pour orienter le modèle. Grâce à sa capacité multimodale (texte et image), GPT-5 permet de créer ou adapter des interfaces rapidement, comme un site de jeux rétro ou un jeu Snake stylisé, en respectant les thèmes et styles existants. L’outil se révèle particulièrement puissant pour transformer des prompts simples en résultats de qualité professionnelle, ouvrant la voie à une créativité accrue en développement frontend.
L’observabilité full-stack passe aussi par le frontend – Longtemps considéré comme une boîte noire, le suivi des performances côté client (latence des interactions, complexité asynchrone, contexte utilisateur) est désormais possible grâce au tracing (OpenTelemetry, Sentry, Datadog). En instrumentant les clics, requêtes et rendus, on relie les actions utilisateurs aux traces backend, offrant une visibilité complète : identification précise des goulots d’étranglement, corrélation entre latence perçue et temps système, et débogage simplifié. Avec une implémentation simple (ex : @opentelemetry/sdk-trace-web
), le frontend s’intègre enfin dans la chaîne d’observabilité, transformant l’expérience utilisateur en données exploitables.
L'article explique ce qu'est l'architecture propre, comment l'utiliser avec des bases de code JS/TS et si cela en vaut vraiment la peine. Il décrit les concepts de domaine, de cas d'utilisation et de couches d'application, et discute de leur application au frontend. L'article inclut également des exemples de code et des liens vers des ressources utiles.
Un état très complet du développement front en 2024