- Angular v21 est une mise à jour majeure pensée pour l’ère du développement web centré sur l’IA, avec des fonctionnalités clés comme Signal Forms, Angular Aria, le serveur MCP, Vitest et la détection des changements Zoneless
- Signal Forms propose une gestion réactive des formulaires basée sur Signals, avec sûreté de typage et validation fondée sur des schémas
- Angular Aria est une bibliothèque de composants UI headless donnant la priorité à l’accessibilité, avec 8 patterns et 13 composants personnalisables selon le style des développeurs
- Vitest a été adopté et stabilisé comme runner de test par défaut, tandis que zone.js n’est plus inclus par défaut, ce qui normalise la stratégie Zoneless
- Les nouveaux sites de documentation ainsi que le tuteur IA et les outils du serveur MCP renforcent l’expérience développeur et les capacités d’intégration de l’IA, point central de cette version
Aperçu des principales fonctionnalités
- Angular v21 renforce largement les fonctionnalités destinées à créer des environnements de développement assistés par l’IA et des applications web extensibles
- La nouvelle version s’articule autour de Signal Forms, Angular Aria, du serveur MCP, de Vitest et de la détection des changements Zoneless
- Les nouvelles applications n’incluent plus
zone.js par défaut, et adoptent à la place la stratégie Zoneless
- Angular CLI configure Vitest comme runner de test par défaut, tout en continuant à prendre en charge Karma et Jasmine
- Le serveur MCP, avec lequel des agents IA peuvent collaborer, est désormais stabilisé et permet aux LLM d’exploiter les dernières fonctionnalités d’Angular
Signal Forms (fonctionnalité expérimentale)
- Signal Forms est une bibliothèque de gestion d’état de formulaires réactifs basée sur Signals
- Le modèle de formulaire est défini comme un signal et synchronisé automatiquement avec les champs
- La sûreté de typage et une logique de validation fondée sur des schémas sont intégrées
- Liaison avec les templates via
form() et la directive [field]
- Liaison possible avec des composants personnalisés sans
ControlValueAccessor
- Inclut des patterns de validation de base comme la vérification d’e-mail et la correspondance par expression régulière, avec possibilité d’ajouter des validateurs personnalisés
- La fonctionnalité est actuellement à l’état expérimental et sera améliorée à partir des retours
Angular Aria (developer preview)
- Angular Aria est une bibliothèque de composants UI headless conçue avec l’accessibilité comme priorité absolue
- Elle fournit 8 patterns (Accordion, Combobox, Grid, Listbox, Menu, Tabs, Toolbar, Tree) et 13 composants
- Tous les composants sont livrés sans style appliqué, pour permettre une personnalisation libre
- Commande d’installation :
npm i @angular/aria
- L’équipe Angular présente trois voies pour développer des composants
- Angular Aria : composants headless centrés sur l’accessibilité
- CDK : fournit des primitives de comportement comme Drag & Drop
- Angular Material : composants complets au style Material Design
Serveur MCP et intégration de l’IA
- Le serveur MCP est un serveur d’outils d’assistance IA intégré à Angular CLI, stabilisé avec la v21
- Fonctions principales
- get_best_practices : fournit des bonnes pratiques
- search_documentation : recherche dans la documentation officielle
- find_examples : fournit les exemples Angular les plus récents
- onpush_zoneless_migration : génère un plan de transition vers Zoneless
- ai_tutor : assistant d’apprentissage Angular basé sur l’IA
- Le serveur MCP permet de résoudre le problème du knowledge cutoff des LLM et d’exploiter des fonctionnalités récentes comme Signal Forms et Angular Aria
Vitest comme runner de test par défaut
- Vitest est désormais stabilisé comme runner de test par défaut d’Angular
- Exécutable avec la commande
ng test
- Karma est obsolète depuis 2023, et Jest comme Web Test Runner doivent être retirés en v22
- Les projets existants peuvent continuer à utiliser Karma/Jasmine
- La commande
ng g @schematics/angular:refactor-jasmine-vitest prend en charge une migration automatique
Détection des changements Zoneless
- zone.js effectuait la détection des changements en patchant les API du navigateur, mais avec des limites en matière de performances
- La détection des changements Zoneless basée sur Signals devient le comportement par défaut avec la v21
- En 2024, plus de la moitié des nouvelles applications internes de Google utilisent Zoneless
- Selon HTTP Archive, plus de 1 400 applications publiques ont adopté Zoneless
- Avantages de Zoneless
- Amélioration des Core Web Vitals, réduction de la taille du bundle, débogage simplifié, meilleure compatibilité avec le traitement asynchrone
- Les applications existantes peuvent utiliser le guide de migration ou l’outil
onpush_zoneless_migration du serveur MCP
Documentation et amélioration de l’expérience développeur
- Refonte complète du site angular.dev
- Nouvelle landing page et structure documentaire centrée sur les concepts récents
- Création d’un hub de ressources IA pour les développeurs (angular.dev/ai)
- Mise à jour des guides sur Signals, le routing, la DI, les thèmes Material et Tailwind CSS
- L’outil
search_documentation du serveur MCP permet de rechercher dans la documentation la plus récente
Autres améliorations
- Mise à jour de la bibliothèque CLDR vers la v47 (amélioration des formats de devise et de date)
- Prise en charge des expressions régulières dans les templates, formatters Signals intégrés et personnalisation des options d’IntersectionObserver
- Genericisation de SimpleChanges, amélioration du pipe KeyValue et ajout de classes utilitaires Material
- CDK Overlay améliore l’accessibilité en s’appuyant sur le popover natif du navigateur
- Angular DevTools ajoute la visualisation des routes et un graphe des Signals
Contributions de la communauté
- Depuis la v20, 215 personnes ont contribué à la base de code Angular
- Principales contributions
- Jaime Burgos : amélioration des migrations et du diagnostic
- Angelo Parziale : ajout d’une migration de transformation pour NgClass/NgStyle
- Hryhorii Avcharov : ajout d’un onglet Transfer State dans DevTools
- Luke Beach, Ruslan Lekhman, Cédric Exbrayat, Younes Jaaidi et d’autres : amélioration de fonctionnalités liées à Vitest et au CDK
Divers
- Les résultats du vote pour la mascotte d’Angular seront dévoilés lors de l’événement de sortie YouTube du 20 novembre 2025
- L’équipe Angular prévoit de continuer à faire évoluer un environnement de développement d’applications web extensible et fiable grâce à Signal Forms et Angular Aria
- Mise à niveau possible vers la dernière version avec la commande
ng update
2 commentaires
Pour les langages ou frameworks sur lesquels les performances des LLM sont moins bonnes, est-ce qu’on fournit ce genre de serveur MCP pour améliorer la qualité des réponses ?
Le support officiel du serveur MCP a l’air intéressant ; je me demande si React propose quelque chose de similaire.