# JavaScript · Veille technologique

[Source canonique](<https://sebastien.rigaux.be/veille/tags/javascript>)

Langage du Web pour les interactions, les API navigateur et les applications serveur.

## [WebMCP : un polyfill W3C pour expérimenter avec les agents web](<https://sebastien.rigaux.be/veille/liens/webmcp-un-polyfill-w3c-pour-experimenter-avec-les-agents-web>)

Le W3C lance un second projet pilote de son programme open source : un polyfill de WebMCP, une API JavaScript en incubation qui permet d’exposer des fonctions d’application sous forme d’outils appelables par des agents et des technologies d’assistance. Le polyfill vise à faciliter l’expérimentation et l’interopérabilité pendant l’évolution de la spécification.

Le projet prévoit une publication sur npm, le suivi des tests Web Platform Tests et l’ajout d’événements de cycle de vie et d’un support déclaratif. Si WebMCP rejoint la voie de standardisation et que des implémentations natives interopérables apparaissent, le polyfill sera progressivement abandonné.

2026-10-29 · [Markdown](<https://sebastien.rigaux.be/veille/liens/webmcp-un-polyfill-w3c-pour-experimenter-avec-les-agents-web.md>) · [Ressource originale](<https://www.w3.org/blog/2026/w3c-launches-second-pilot-of-program-to-support-open-source-projects/>)

## [DeadTag : des tags web abandonnés détournés contre les iPhone](<https://sebastien.rigaux.be/veille/liens/deadtag-des-tags-web-abandonnes-detournes-contre-les-iphone>)

Des domaines expirés derrière d’anciens tags d’analyse ou de publicité ont été rachetés pour rediriger des visiteurs vers des contenus malveillants, dont les kits d’exploitation iOS Coruna et DarkSword. Report URI et iVerify décrivent une chaîne qui filtre les visiteurs et adapte sa charge à l’appareil ; les scanners de sécurité peuvent ne recevoir qu’une réponse vide.

Le cas rappelle qu’un script tiers oublié reste une dépendance active : son domaine peut changer de propriétaire sans modification du site. L’article recommande d’auditer les tags, de surveiller les scripts chargés et de contrôler leurs domaines via une Content Security Policy.

2026-10-29 · [Markdown](<https://sebastien.rigaux.be/veille/liens/deadtag-des-tags-web-abandonnes-detournes-contre-les-iphone.md>) · [Ressource originale](<https://blog.report-uri.com/deadtag-how-forgotten-website-tags-became-a-delivery-network-for-iphone-spyware/>)

## [OGL : une bibliothèque WebGL minimale pour écrire ses shaders](<https://sebastien.rigaux.be/veille/liens/ogl-une-bibliotheque-webgl-minimale-pour-ecrire-ses-shaders>)

OGL réduit les abstractions au nécessaire pour créer des rendus WebGL et écrire ses propres shaders. Sans dépendances, cette bibliothèque en modules ES partage certaines conventions avec Three.js, mais offre moins de fonctionnalités et permet de recourir directement aux commandes WebGL natives.

Le découpage entre Math, Core et Extras aide à composer une intégration légère ; le README indique 29 Ko minifiés et compressés pour l’ensemble, avant tree-shaking. Les exemples commentés couvrent aussi bien une scène avec caméra qu’un shader plein écran. Ce faible niveau d’abstraction facilite l’apprentissage et l’extension, au prix d’une prise en charge plus directe des détails WebGL.

2026-10-26 · [Markdown](<https://sebastien.rigaux.be/veille/liens/ogl-une-bibliotheque-webgl-minimale-pour-ecrire-ses-shaders.md>) · [Ressource originale](<https://github.com/oframe/ogl>)

## [Mutative : des mises à jour immuables sans spread](<https://sebastien.rigaux.be/veille/liens/mutative-des-mises-a-jour-immuables-sans-spread>)

Mutative permet d’écrire des mutations sur un draft pour produire un nouvel état immuable, sans recopier manuellement chaque niveau avec la syntaxe spread. La bibliothèque prend aussi en charge les tableaux, `Set` et `Map`, ainsi que les patches et le gel optionnel.

Ses benchmarks annoncent une moyenne géométrique 3,6 fois plus rapide qu’Immer à réglages comparables, ou 6,6 fois avec les paramètres par défaut de chaque bibliothèque. Les mesures varient selon les workloads ; les reducers écrits à la main restent plus rapides dans la plupart des cas présentés.

2026-10-23 · [Markdown](<https://sebastien.rigaux.be/veille/liens/mutative-des-mises-a-jour-immuables-sans-spread.md>) · [Ressource originale](<https://mutative.js.org/>)

## [Patterns.dev : comprendre les motifs JavaScript et performance web](<https://sebastien.rigaux.be/veille/liens/patterns-dev-comprendre-les-motifs-javascript-et-performance-web>)

Patterns.dev documente des motifs de conception JavaScript et des techniques de performance pour les applications web. Les exemples aident à relier les choix d’architecture à leurs effets sur le chargement et le rendu.

2026-05-10 · [Markdown](<https://sebastien.rigaux.be/veille/liens/patterns-dev-comprendre-les-motifs-javascript-et-performance-web.md>) · [Ressource originale](<https://www.patterns.dev/>)

## [Nanostores : partager un état atomique entre frameworks front-end](<https://sebastien.rigaux.be/veille/liens/nanostores-partager-un-etat-atomique-entre-frameworks-front-end>)

Nanostores propose de petits magasins d’état composables pour React, Preact, Vue et Svelte. Sa conception atomique et arborescente favorise le découpage et l’élimination du code inutilisé.

2026-05-01 · [Markdown](<https://sebastien.rigaux.be/veille/liens/nanostores-partager-un-etat-atomique-entre-frameworks-front-end.md>) · [Ressource originale](<https://github.com/nanostores/nanostores>)

## [Ajouter un retour haptique aux interactions du web mobile](<https://sebastien.rigaux.be/veille/liens/ajouter-un-retour-haptique-aux-interactions-du-web-mobile>)

WebHaptics apporte des vibrations tactiles aux interactions d’un site mobile, via une API JavaScript simple. Le projet donne un moyen d’ajouter un retour physique aux gestes sans créer une application native.

2026-03-04 · [Markdown](<https://sebastien.rigaux.be/veille/liens/ajouter-un-retour-haptique-aux-interactions-du-web-mobile.md>) · [Ressource originale](<https://haptics.lochie.me/>)

## [Spacetime : explorer dates, fuseaux horaires et formats](<https://sebastien.rigaux.be/veille/liens/spacetime-explorer-dates-fuseaux-horaires-et-formats>)

Cette démonstration montre la conversion d’un même instant entre fuseaux et les formats proposés par Spacetime. Elle expose aussi des informations de calendrier et d’heure d’été utiles aux interfaces temporelles.

2025-10-06 · [Markdown](<https://sebastien.rigaux.be/veille/liens/spacetime-explorer-dates-fuseaux-horaires-et-formats.md>) · [Ressource originale](<https://work.spencermountain.dev/spacetime/>)

## [Npm-check-updates : repérer les nouvelles versions de dépendances](<https://sebastien.rigaux.be/veille/liens/npm-check-updates-reperer-les-nouvelles-versions-de-dependances>)

Npm-check-updates compare les dépendances du package.json aux versions disponibles et peut actualiser leurs contraintes. L’installation reste une étape distincte, ce qui laisse examiner les changements proposés.

2025-10-05 · [Markdown](<https://sebastien.rigaux.be/veille/liens/npm-check-updates-reperer-les-nouvelles-versions-de-dependances.md>) · [Ressource originale](<https://github.com/raineorshine/npm-check-updates>)

## [Knip : retrouver dépendances, exports et fichiers inutilisés](<https://sebastien.rigaux.be/veille/liens/knip-retrouver-dependances-exports-et-fichiers-inutilises>)

Knip analyse les points d’entrée et l’outillage d’un projet pour détecter le code inutilisé. Ses plugins prennent en compte les frameworks afin de rendre le nettoyage plus ciblé.

2025-10-05 · [Markdown](<https://sebastien.rigaux.be/veille/liens/knip-retrouver-dependances-exports-et-fichiers-inutilises.md>) · [Ressource originale](<https://knip.dev/>)

## [EmbedPDF : ajouter un lecteur PDF indépendant du framework](<https://sebastien.rigaux.be/veille/liens/embedpdf-ajouter-un-lecteur-pdf-independant-du-framework>)

EmbedPDF fournit un lecteur PDF JavaScript intégrable à plusieurs frameworks. Le dépôt distingue la branche stable de la version en développement et renvoie vers démonstrations et documentation.

2025-09-07 · [Markdown](<https://sebastien.rigaux.be/veille/liens/embedpdf-ajouter-un-lecteur-pdf-independant-du-framework.md>) · [Ressource originale](<https://github.com/embedpdf/embed-pdf-viewer>)

## [ForesightJS : anticiper les navigations pour déclencher le prefetch](<https://sebastien.rigaux.be/veille/liens/foresightjs-anticiper-les-navigations-pour-declencher-le-prefetch>)

ForesightJS observe trajectoire du curseur, tabulation et défilement pour estimer les prochains éléments visés. Il permet de commencer le chargement avant le clic ou le contact tactile.

2025-08-17 · [Markdown](<https://sebastien.rigaux.be/veille/liens/foresightjs-anticiper-les-navigations-pour-declencher-le-prefetch.md>) · [Ressource originale](<https://foresightjs.com/>)

## [PDFSlick : intégrer navigation et outils PDF dans une application web](<https://sebastien.rigaux.be/veille/liens/pdfslick-integrer-navigation-et-outils-pdf-dans-une-application-web>)

PDFSlick fournit des exemples de lecteurs PDF pour React, Svelte, SolidJS et JavaScript. Navigation, miniatures et zoom illustrent comment traiter les documents comme une partie de l’interface.

2025-05-04 · [Markdown](<https://sebastien.rigaux.be/veille/liens/pdfslick-integrer-navigation-et-outils-pdf-dans-une-application-web.md>) · [Ressource originale](<https://pdfslick.dev/>)

## [Anime.js : coordonner timelines, gestes et animations au scroll](<https://sebastien.rigaux.be/veille/liens/anime-js-coordonner-timelines-gestes-et-animations-au-scroll>)

Anime.js réunit animations, timelines, springs et observation du scroll dans une même API. Les outils de composition permettent de régler les propriétés et de synchroniser plusieurs effets.

2025-04-20 · [Markdown](<https://sebastien.rigaux.be/veille/liens/anime-js-coordonner-timelines-gestes-et-animations-au-scroll.md>) · [Ressource originale](<https://animejs.com/>)

## [SuperJSON : sérialiser les dates et types absents de JSON](<https://sebastien.rigaux.be/veille/liens/superjson-serialiser-les-dates-et-types-absents-de-json>)

SuperJSON complète JSON.stringify et JSON.parse pour transporter des valeurs comme Date ou BigInt. Il réduit les conversions manuelles lors des échanges entre serveur et client.

2025-02-23 · [Markdown](<https://sebastien.rigaux.be/veille/liens/superjson-serialiser-les-dates-et-types-absents-de-json.md>) · [Ressource originale](<https://www.npmjs.com/package/superjson>)

## [ExcellentExport : exporter des tableaux HTML vers Excel ou CSV](<https://sebastien.rigaux.be/veille/liens/excellentexport-exporter-des-tableaux-html-vers-excel-ou-csv>)

ExcellentExport transforme des tableaux HTML en fichiers Excel ou CSV directement dans le navigateur. Il permet d’ajouter un export à une interface sans construire un service serveur dédié.

2025-02-22 · [Markdown](<https://sebastien.rigaux.be/veille/liens/excellentexport-exporter-des-tableaux-html-vers-excel-ou-csv.md>) · [Ressource originale](<https://github.com/jmaister/excellentexport>)

## [Jscanify : détecter et redresser des documents en JavaScript](<https://sebastien.rigaux.be/veille/liens/jscanify-detecter-et-redresser-des-documents-en-javascript>)

Jscanify utilise OpenCV.js pour détecter une feuille et corriger sa déformation. Le dépôt fournit des exemples pour intégrer cette numérisation dans un navigateur ou un environnement Node.js.

2025-02-15 · [Markdown](<https://sebastien.rigaux.be/veille/liens/jscanify-detecter-et-redresser-des-documents-en-javascript.md>) · [Ressource originale](<https://github.com/puffinsoft/jscanify>)

## [Les signals Preact pour gérer un état réactif](<https://sebastien.rigaux.be/veille/liens/les-signals-preact-pour-gerer-un-etat-reactif>)

Le guide présente les signals et le suivi automatique des dépendances dans Preact. Il explique comment les changements d’état mettent à jour l’interface sans multiplier les synchronisations manuelles.

2025-02-15 · [Markdown](<https://sebastien.rigaux.be/veille/liens/les-signals-preact-pour-gerer-un-etat-reactif.md>) · [Ressource originale](<https://preactjs.com/guide/v10/signals/>)

## [Générer des valeurs de test avec les générateurs JavaScript](<https://sebastien.rigaux.be/veille/liens/generer-des-valeurs-de-test-avec-les-generateurs-javascript>)

Cette note explore la composition de générateurs pour tester des prédicats de types TypeScript. Elle relie la génération de valeurs à la vérification de la fiabilité des fonctions de validation.

2025-01-25 · [Markdown](<https://sebastien.rigaux.be/veille/liens/generer-des-valeurs-de-test-avec-les-generateurs-javascript.md>) · [Ressource originale](<https://github.com/peter-leonov/type-predicate-generator/issues/18>)

## [Unstorage : une API clé-valeur commune à plusieurs stockages](<https://sebastien.rigaux.be/veille/liens/unstorage-une-api-cle-valeur-commune-a-plusieurs-stockages>)

Unstorage propose une interface JavaScript commune pour la mémoire, les fichiers, les navigateurs et des services cloud. Les drivers peuvent être montés sous différents préfixes dans une même instance.

2025-01-05 · [Markdown](<https://sebastien.rigaux.be/veille/liens/unstorage-une-api-cle-valeur-commune-a-plusieurs-stockages.md>) · [Ressource originale](<https://unstorage.unjs.io/>)

Page 1 / 2

[Suivant](<https://sebastien.rigaux.be/veille/tags/javascript/page/2>)
