Vue normale

Il y a de nouveaux articles disponibles, cliquez pour rafraîchir la page.
À partir d’avant-hierFlux principal

Web Serial débarque enfin dans Firefox !

Par : Korben ✨
22 mai 2026 à 08:43

On est vendredi, j'ai un mal de tête carabiné mais je me pose quand même devant l'ordi pour vous annoncer une bonne nouvelle ! Firefox 151 sur desktop vient enfin d'implémenter une fonctionnalité que Mozilla refusait catégoriquement de supporter depuis 6 ans : le support de l'API Web Serial.

Alors non, c'est pas un gros mot, hein, ça veut surtout dire qu'un site web ouvert avec Firefox peut maintenant lire et écrire directement sur du matériel que vous branchez en USB, genre un Arduino, un ESP32, une imprimante 3D, une clé crypto ou que sais-je encore, sans que vous ayez à installer le moindre logiciel ou pilote.

Le cas d'usage le plus parlant, c'est le flashage de microcontrôleurs. Avant, pour mettre un firmware sur un ESP32, il fallait installer esptool en Python, ou l'IDE Arduino, galérer avec les drivers série, choisir le bon port à la main. Maintenant des outils comme ESPHome ou Home Assistant font tout ça depuis un onglet, en quelques clics. Vous branchez la carte, le site demande l'autorisation d'accéder au port, et c'est réglé. Adafruit fait pareil pour installer CircuitPython sur ses cartes ESP32-S2.

Et pour comprendre pourquoi c'est une vraie bonne nouvelle, il faut se rappeler d'où on vient. Chrome propose quand même Web Serial depuis 2021 mais Mozilla a toujours considéré qu'un accès série accordait trop de contrôle sur un appareil, sans la moindre authentification. Et ils n'ont pas tord... D'ailleurs Apple, de son côté, campe toujours sur cette position et qualifie carrément la spec de dangereuse, notamment à cause des risques de fingerprinting .

Mais ce qui a fait bouger Mozilla, c'est un revirement progressif en interne. En 2022, Bobby Holley, le CTO de Firefox, a rouvert le dossier, puis en 2024, il a posé ses conditions, à savoir un mécanisme de contrôle par add-on et un consentement clairement formulé. Et le résultat, on peut le voir dans l'implémentation finale, puisque l'autorisation marche par site et par port. C'est bien puisqu'un site ne voit absolument rien tant que vous ne lui donnez pas la main, et ne récupère aucune liste des appareils branchés, ni aucune info de fingerprinting exploitable au-delà du port que vous sélectionnez vous-même.

J'étais le premier à pester contre Mozilla pour cette absence de support. Parfois je les trouve trop prudent, au delà du raisonnable, ce qui les mets en décalage avec ce que proposent les autres et ce qui fait leur fait perdre bêtement des parts de marché.

Mais c'est vrai aussi que la prudence sur ce genre d'API qui touche directement au hardware, c'est ce qu'on attend tous d'un navigateur qui mise tout sur le respect de la vie privée de ses utilisateurs. D'ailleurs, pour les parano ou les admins système (oui c'est pareil ^^), sachez qu'en environnement Firefox Enterprise, Web Serial est désactivé par défaut.

Au-delà du flashage de cartes, les usages réels sont déjà très nombreux. Un ingénieur de Mozilla, Florian Quèze, s'en sert par exemple pour lire la consommation d'un compteur USB d'énergie standard (du genre AVHzY C3 ou Joy-IT TC66C) et balancer les données directement dans le Firefox Profiler. Les imprimantes 3D, les briques LEGO programmables, les Raspberry Pi Pico, tout ce petit monde cause série et devient ainsi pilotable depuis une page web.

D'ailleurs je vous parlais récemment de CANviz, qui analyse le bus CAN de votre bagnole directement dans le navigateur, hé bien c'est typiquement le genre de truc que Web Serial rend possible sans app native.

Après la spec Web Serial traîne toujours au Web Incubator Community Group, donc rien n'est gravé dans le marbre mais cela dit, Mozilla pousse pour une vraie standardisation via le WHATWG, ce qui n'était pas gagné vu d'où on est parti.

Voilà, allez, je vous laisse, j'ai un dafalgan qui m'attend ^^

Source

Plus de confort de lecture sur Korben

Par : Korben ✨
12 mai 2026 à 12:14

Je viens de pousser en prod une fonctionnalité sur laquelle je bosse depuis quelques temps et comme je suis content du résultat, c'est le moment de partager ça avec vous.

En haut à gauche du site, juste à côté de l'icône qui change le thème, vous trouverez un petit bouton "abc" qui jusqu'à présent ne servait qu'à appliquer une police spéciale dyslexique à mon contenu. Mais j'ai amélioré un peu tout ça pour que maintenant niveau "Confort de lecture" vous soyez refait !

En cliquant donc sur cette icône, s'ouvre un petit panneau de config avec dedans de quoi configurer votre expérience de lecture aux petits oignons. Police adaptée pour la dyslexie, espacement variable, fond couleur crème, mode audio TTS, lignes colorées pour guider l'œil...etc tout ça sans dépendre d'un service tiers.

Ensuite, vos réglages sont conservés dans le localStorage de votre navigateur pour les retrouver à chaque visite et il y a un petit lien en bas de la fenêtre pour réinitialiser tout ça.

Maintenant, l'histoire derrière cette feature, parce qu'elle est intéressante. À la base j'étais parti pour recoder un équivalent du " Bionic Reading ", vous savez ce truc à la mode qui met en gras le début de chaque mot pour soi-disant accélérer la lecture. J'avais déjà bien avancé quand je suis tombé sur une étude scientifique de 2024 qui démontait complètement le concept. En gros, les chercheurs ont mesuré que cela ne produisait aucun effet positif sur la vitesse de lecture ni sur la compréhension. Que dalle...

Du coup, pivot complet... J'ai tout repris pour bâtir un système basé sur ce qui marche vraiment, avec un principe simple : Chaque option du panneau affiche un badge "Sci ✓" si elle est soutenue par la recherche, ou "Pref" si c'est une préférence subjective documentée. Comme ça vous savez sur quoi vous cliquez et on évite le marketing déguisé en science.

Côté polices donc, vous avez 4 choix. La police par défaut du site, Lexend qui est une "variable font" développée par la Dr. Bonnie Shaver-Troup avec des résultats publiés montrant une amélioration significative de la fluidité de lecture, Atkinson Hyperlegible créée par le Braille Institute spécifiquement pour les personnes malvoyantes, et enfin OpenDyslexic que j'avais déjà. Pour cette dernière, je l'ai mise avec un badge "Pref" parce que la communauté dyslexique l'apprécie mais les études sont moins solides scientifiquement.

Les sliders d'espacement permettent également de jouer sur trois axes : espace entre les lettres, hauteur de ligne, largeur de la colonne de texte. Tout est calibré pour être utile sans casser le rendu. Vous pouvez aussi activer un fond crème qui utilise la couleur Solarized base3 (c'est #FDF6E3, reconnue dans la communauté des dev pour son confort de lecture sur une longue durée), et le texte non-justifié qui évite les "rivières" blanches entre mots qui posent problème notamment aux dyslexiques.

Pour le guide visuel, je vous ai mis 2 options. "Lignes colorées" qui applique un gradient cosinus caractère par caractère sur chaque ligne, avec une palette noir-bleu-noir-rouge qui alterne et permet à l'œil de suivre naturellement la progression du texte.

Et ce que j'ai appelé Saccade que j'ai gardé en option, marqué d'un badge orange "Pref ⚠" parce que la science dit que ça sert pas à grand chose, mais que si vous aimez visuellement, bah au moins c'est dispo !

Et puis il y a le mode audio (TTS) qui dépend de la qualité des voix installées sur votre système. Y'a pas d'IA là dedans, donc ça peut donner une lecture robotique sur certains OS. Une fois activé, ça apparaît en haut des articles avec une estimation de durée. Ça utilise la Web Speech API native de votre navigateur, donc zéro service externe une fois encore et ça respecte la voix système que vous avez configurée.

À ma connaissance, je suis le seul à proposer ce niveau de personnalisation pour l'accessibilité. N'oubliez pas qu'au delà de la démarche, l'accessibilité numérique est devenu une obligation légale en Europe avec l' European Accessibility Act qui s'applique depuis juin 2025 (Qui en a entendu parlé ? Pas grand monde je pense).

En tout cas, si je peux me permettre ce luxe de bosser sur des trucs qui ne rapportent pas un kopeck mais qui rendent le site plus agréable et plus accessible, c'est uniquement grâce à mes Patreons .

Alors un énorme merci à eux.

❌
❌