Éditer des documents Word en local dans votre navigateur
Si vous avez déjà essayé d'intégrer une fonction d'édition de documents Word dans une application web, vous savez que c'est souvent la croix et la bannière. En fait, pour obtenir un truc correct, on finit souvent par s'appuyer sur des solutions lourdes côté serveur ou des APIs propriétaires qui coûtent un bras. Mais ça, c'était avant que je tombe sur docx-js-editor.
Ce petit bijou open source est un éditeur WYSIWYG conçu spécifiquement pour l'écosystème React qui permet d'ouvrir, de modifier et d'enregistrer des fichiers .docx directement dans le navigateur. Le gros point fort revendiqué par le projet, c'est l'absence de dépendance serveur pour toute la partie édition. Tout le boulot se fait donc en local chez le client, ce qui est plutôt classe côté confidentialité des données puisque vos documents ne transitent pas par un backend obscur.
Techniquement, l'outil s'appuie sur un système qui semble proche de ProseMirror (il permet d'ailleurs d'y injecter des plugins ProseMirror). Perso, j'ai choisi de vous en parler parce que la gestion native du format DOCX est ici au cœur du moteur, et pas juste une couche d'export rajoutée à l'arrache. Le rendu est assez propre d'ailleurs et le projet vise une compatibilité maximale avec Microsoft Word.
On y retrouve l'essentiel évidemment : formatage de texte (gras, italique, polices, couleurs), gestion des tableaux, des images et des hyperliens. Bref, tout ce qu'il faut pour faire un vrai traitement de texte sans avoir à sortir l'artillerie lourde. (et c'est pas peu dire !)
Pour l'installer, c'est hyper fastoche : un petit npm install @eigenpal/docx-js-editor et hop, le dossier débarque dans votre node_modules/ et c'est réglé. D'ailleurs, l'architecture est extensible. Y'a même un plugin pour le surlignage syntaxique des tags docxtemplater, ce qui facilite grandement la vie si vous bossez sur des modèles de documents complexes. C'est très pratique pour les applis métier qui génèrent par exemple des factures ou des contrats à la volée !
Du coup, si vous cherchez une solution open source (licence MIT) pour manipuler des documents Word sans passer par une usine à gaz, allez jeter un œil à ce projet. C'est aussi un bon complément pour ceux qui utilisent déjà des scripts pour organiser leurs fichiers et qui ont besoin d'une interface d'édition rapide.
Ah et y'a une démo live qui tourne et le code est dispo sur GitHub .
Amusez-vous bien !
