RosenavRosenav

Journal de développement

Historique complet des itérations de l'outil de similarité et de diff de texte Rosenav — chaque ajustement d'algorithme et chaque amélioration d'ergonomie y est consigné.

maintenu par l'équipe d'ingénierie 345tool • dernière mise à jour le 13 juin 2026

13 juin 2026

Refonte EEAT de la page d'accueil — la vérification de similarité au premier plan

Nous avons réorganisé la hiérarchie de l'information de la page d'accueil et placé la vérification de similarité cosinus en tête. Auparavant, la page ressemblait à « l'index d'une boîte à outils » ; elle répond désormais d'abord à la question « quel problème cet outil résout-il », puis présente les fonctionnalités concrètes.

Interprétation à 11 niveaux de similarité — des repères plus fins

Auparavant, un simple pourcentage était affiché et l'utilisateur devait deviner si « 70 % » signifiait une ressemblance forte. Désormais, la plage 0-100 % est divisée en 11 intervalles, chacun assorti d'une explication en langage courant, ce qui rend le résultat directement exploitable.

Extension du JSON-LD WebApplication — une couverture de mots-clés plus complète

Nous avons complété les champs de données structurées pour que les moteurs de recherche comprennent précisément que cette page propose un outil en ligne, et non un article didactique.

Mise en production — Nginx, sitemap et GA4

Déploiement officiel terminé : configuration de Nginx, soumission du sitemap, intégration des statistiques anonymes GA4, et vérification point par point de l'affichage mobile.

10 juin 2026

Correction d'un défaut dans escapeHtml — une opération vide « qui semblait fonctionner »

La fonction d'échappement du résultat de diff ne fonctionnait en réalité pas : elle encodait les entités puis les décodait à nouveau, ce qui pouvait casser le rendu en présence de caractères spéciaux. Ce bug était très difficile à repérer, car la grande majorité des textes ordinaires s'affichaient correctement. Après correction, le traitement des entités est désormais correct.

Synchronisation de la hauteur des panneaux de dédoublonnage — syncDedupHeight

Les zones de saisie et de résultat se désalignaient lorsque la longueur des contenus différait fortement. Une logique de synchronisation de hauteur a été ajoutée pour que les deux panneaux restent toujours alignés, ce qui réduit la fatigue visuelle liée aux allers-retours du regard.

Onglet par défaut et validation de la limite de caractères

L'onglet ouvert par défaut est passé à la vérification de similarité (auparavant le diff de texte), et une validation stricte de la longueur maximale a été ajoutée pour éviter qu'un texte trop long ne ralentisse la page.

5 juin 2026

Lancement de la similarité cosinus — vectorisation TF et retour visuel par couleur

Implémentation de la fonctionnalité centrale : conversion de deux textes en vecteurs de fréquence de mots, calcul du cosinus de l'angle formé, et indication du degré de ressemblance par une barre de progression et des couleurs. L'outil passe ainsi de « comparaison de diff » à une double capacité « similarité + diff ».

Interface à 3 onglets — diff, similarité, dédoublonnage et tri

Plutôt que d'empiler trois familles de fonctions sur le même écran, nous les avons regroupées dans trois onglets. L'utilisateur ne fait face qu'à une tâche à la fois, ce qui réduit nettement la complexité perçue.

Amélioration des zones de texte — séparation de l'entrée et de la sortie

Le résultat est placé dans un panneau indépendant en lecture seule, ce qui évite les modifications accidentelles ; la zone de saisie reçoit un texte d'exemple et un compteur de caractères pour que les nouveaux utilisateurs ne se demandent pas quoi remplir.

3 juin 2026

Algorithme de diff LCS — comparaison ligne par ligne en programmation dynamique

Mise en œuvre de la plus longue sous-séquence commune en programmation dynamique, pour déterminer la meilleure correspondance entre deux textes ; les parties non appariées constituent les ajouts et suppressions. C'est la base de calcul du diff de texte.

Conception des composants CSS — le langage visuel des outils de texte

Mise en place de styles de composants unifiés : panneaux, onglets, états des boutons, barres de statistiques. Un langage visuel cohérent évite de redessiner l'apparence à chaque nouvelle fonctionnalité.

Changement de marque — du vérificateur de mots de passe à Rosenav

Ce domaine servait à l'origine à un outil de vérification de la robustesse des mots de passe. À mesure que le centre de gravité s'est déplacé vers le traitement de texte, nous avons redéfini la position et le nom de la marque, et intégré les capacités existantes dans la nouvelle boîte à outils.

1er juin 2026

Choix des algorithmes — LCS, similarité cosinus et fréquence de mots

Nous avons fixé l'orientation technique avant d'écrire la première ligne de code : LCS pour le diff, similarité cosinus couplée à la fréquence de mots pour la ressemblance globale. Ni l'un ni l'autre ne dépend d'un modèle d'apprentissage automatique : de simples calculs mathématiques suffisent, entièrement dans le navigateur.

Conception du tokeniseur — traitement Unicode pour les langues CJK

L'anglais se découpe en mots grâce aux espaces et à la ponctuation, mais le chinois, le japonais et le coréen n'ont pas d'espace entre les mots. Le tokeniseur reconnaît donc les plages de caractères CJK et les traite caractère par caractère, tout en conservant un découpage par mot pour les textes latins, afin que les utilisateurs sinophones obtiennent eux aussi des résultats de similarité pertinents.

Architecture sans serveur — la ligne rouge du respect de la vie privée

Décidé dès la première ligne de code : pas de back-end. Le texte est traité uniquement dans le navigateur, sans envoi, sans stockage, sans trace. C'est à la fois un engagement de confidentialité et la condition qui permet à l'outil de fonctionner hors ligne.

Nous contacter

Nous sommes l'équipe 345tool

345tool est une équipe de développeurs indépendants spécialisée dans les outils web de haute qualité, entièrement côté client et respectueux de la vie privée. Rosenav en fait partie et suit les mêmes principes : prêt à l'emploi, aucune collecte de données, aucun enregistrement inutile.

En savoir plus sur notre équipe