Grâce à une collection de bibliothèques JavaScript
Quelques semaines après l'abandon de sa bibliothèque YUI, Yahoo! annonce la sortie de son nouveau projet : Format.JS. C'est une collection de bibliothèques JavaScript orientée internationalisation et qui se concentre donc sur le format des nombres, des dates et des chaînes de caractères selon les régions.
FormatJS a des intégrations avec des bibliothèques de templating et de composants telles que Handlebars, React et Dust car c'est principalement à ce niveau que les développeurs ont besoin d'internationaliser leurs messages dans les applications Web. Cela permet d'utiliser une manière déclarative. Au lieu de formater des données avant de les restituer au modèle, les données brutes peuvent être passées au modèle et être mise au format sur demande. Le développeur délègue ainsi la responsabilité de la mise en forme à Format.JS au lieu de devoir ré-implémenter la logique d'internationalisation dans la code métier.
Avec la montée en force des applications monopage, les interfaces utilisateur doivent être restituées dans le navigateur à l'aide de JavaScript. Ce qui pose encore de nombreux défis car JavaScript, à partir d'ECMAScript 5.1, apporte des fonctionnalités de base d'internationalisation qui ne sont pas disponibles dans tous les navigateurs couramment utilisés.
Consitué selon le Intl (un espace de nom pour l'API ECMAScript d'internationalisation) ainsi que selon le projet Unicode CLDR, tout en suivant le guide ICL pour la syntaxe des messages, Format.JS peut offrir les fonctionnalités suivantes pour environs 150 langues :
- l'affichage des nombres avec le séparateurs spécifiques aux paramètres régionaux ;
- l'affichage correcte des dates et des heures pour chaque région ;
- l'affichage des dates relatives à « maintenant ». Par exemple, « il y a 3 heures » ;
- la gestion du pluriel comme par exemple pour afficher le nombre de commentaires d'un billet de blog.
Format.JS
Source : le blog de Yahoo!.
Et vous ?
Que pensez-vous de ce genre d'outil ? En connaissez-vous d'autres ?
Que pensez-vous de la stratégie de Yahoo! et de ses bibliothèques (Pure, les modules CSS et Format.JS) ?