Skip to content

Latest commit

 

History

8 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

📄 ➜ 📝 Convertisseur Markdown

Un convertisseur universel de fichiers bureautiques en Markdown (.md) — 100 % local, sans installation, sans serveur.

🔗 Utiliser l'application →


✨ Comment l'utiliser

  1. Ouvrez le lien ci-dessus dans votre navigateur
  2. Glissez vos fichiers dans la zone de dépôt (ou cliquez pour les sélectionner)
  3. Récupérez vos .md — un par un, ou tous en .zip

🔒 Confidentialité — 100 % local

Vos fichiers ne quittent jamais votre appareil.

Toute la conversion s'effectue dans votre navigateur, en JavaScript côté client. Aucun fichier n'est envoyé sur un serveur, aucune donnée n'est collectée, aucun cookie n'est posé.

✅ Adapté pour : arrêtés municipaux, rapports internes, documents administratifs, données RH, courriers confidentiels.


📋 Formats pris en charge

Catégorie Extensions Moteur
Word .docx mammoth.js + Turndown
PDF (texte) .pdf PDF.js
Excel .xlsx, .xls, .ods SheetJS
Données tabulaires .csv, .tsv PapaParse
PowerPoint .pptx JSZip
Texte .txt Natif
Page web .html, .htm Turndown

⚠️ Limites connues

  • Formats anciens (.doc / .ppt, avant 2007) : non pris en charge. Ouvrez-les dans Word/PowerPoint et enregistrez en .docx / .pptx.
  • PDF scannés (image) : aucun texte ne peut être extrait sans OCR. Un avertissement est ajouté au fichier produit. Pour traiter ces PDF, utilisez d'abord un outil OCR (Adobe Acrobat, ilovepdf.com, Tesseract…).
  • Connexion internet requise uniquement à la première visite : les bibliothèques (~1 Mo total) sont chargées depuis le CDN cdnjs.cloudflare.com. Dès la première visite en ligne, le service worker les met en cache : l'outil fonctionne ensuite 100 % hors-ligne (et peut être installé comme une application).

🔧 Fonctionnalités

  • Glisser-déposer multi-fichiers ou sélecteur classique
  • Conversion par lot en parallèle — jusqu'à 4 fichiers traités simultanément
  • Affichage instantané — les bibliothèques se chargent en arrière-plan sans bloquer la page
  • Interface qui ne gèle jamais — les conversions lourdes (Excel, CSV, PowerPoint) tournent dans un Web Worker
  • Installable (PWA) — fonctionne 100 % hors-ligne après la première visite
  • Téléchargement individuel ou archive .zip complète
  • Aperçu intégré — vérifiez le rendu Markdown avant téléchargement
  • Copier dans le presse-papiers d'un clic
  • Détection automatique d'encodage (UTF-8, UTF-16, Windows-1252) pour les CSV/TXT
  • Détection des PDF scannés avec message d'orientation
  • Accessibilité : navigation clavier complète, focus trap sur les modales, attributs ARIA

🚀 Hébergement local (optionnel)

Si vous préférez héberger l'outil sur votre propre serveur ou en local :

# Cloner le repo
git clone https://github.com/brissonjo-sudo/convertisseur-markdown.git
cd convertisseur-markdown

# Aucune dépendance à installer !
# Il suffit d'ouvrir index.html dans un navigateur :
xdg-open index.html      # Linux
open index.html          # macOS
start index.html         # Windows

Vous pouvez aussi l'utiliser complètement hors-ligne : téléchargez juste index.html, ouvrez-le, et après le premier chargement les bibliothèques restent en cache.


🏗️ Architecture technique

  • Quatre fichiers, zéro build :
    • index.html — toute l'application (HTML + CSS + JS). Ouvert seul, il reste pleinement fonctionnel (y compris en file://), sans le mode hors-ligne géré.
    • sw.js — service worker : cache hors-ligne (fichier séparé obligatoire, doit être servi en HTTP(S) même-origine)
    • manifest.webmanifest — manifeste PWA (installation)
    • icone.svg — icône de l'application
  • Zéro framework : JavaScript vanilla, pas de webpack, pas de build
  • Conversions lourdes déléguées : les tableurs / CSV / PowerPoint sont parsés dans un Web Worker (construit à partir du bloc #code-partage d'index.html, sans duplication de code), avec repli automatique sur le fil principal si le worker ne peut pas démarrer
  • Bibliothèques tierces : chargées depuis cdnjs.cloudflare.com, versions épinglées
  • Compatibilité : Chrome, Edge, Firefox récents (testé sur les 3)

Sécurité

  • ✅ Conversion 100 % côté client (zéro requête réseau pour les fichiers)
  • ✅ Construction DOM sécurisée (pas d'innerHTML avec données externes → pas de XSS)
  • ✅ HTML malveillant neutralisé (DOMParser inerte, <script>/<style> retirés)
  • ✅ Validation par tests automatisés en navigateur (Playwright)

🛠️ Contribuer

Pour modifier l'outil :

  1. Modification rapide via GitHub : cliquez sur le crayon ✏️ sur index.html, éditez, commit. L'URL se met à jour en 1-2 min.
  2. Modification locale : git clone, modifier index.html, git push. Idem.

Aucune compilation, aucun build, aucune dépendance npm.

Note (service worker) : modifier index.html seul ne demande rien de particulier — les pages sont servies « réseau d'abord », la nouvelle version s'affiche au rechargement suivant. En revanche, si vous changez la version d'une bibliothèque CDN, mettez à jour son URL dans index.html et dans sw.js (PRECACHE), puis incrémentez la constante VERSION de sw.js pour purger l'ancien cache.


📅 Roadmap (idées, non engageant)

  • 🔭 OCR pour les PDF scannés (Tesseract.js — décision en attente, ~20 Mo à charger)
  • 🔭 Extraction des images intégrées dans les .docx et .pptx
  • 🔭 Support .epub (e-books)
  • 🔭 Interface mobile optimisée (actuellement responsive mais perfectible)

📜 Licence

MIT — voir le fichier LICENSE. Utilisez, modifiez, partagez librement.


Outil développé pour faciliter la rédaction et l'archivage de documents administratifs.

About

Convertisseur universel de fichiers vers Markdown — 100% local, sans installation

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages