Une boîte à outils PDF qui s’installe comme une application native — icône sur le bureau, fenêtre dédiée, fichiers reçus directement depuis le système — sans passer par un magasin d’applications ni créer de compte : c’est ce que permet le format PWA (Progressive Web App). Document Flare en exploite toutes les capacités, y compris la plus rare : un fonctionnement complet hors ligne, après une première visite en ligne.
Une application sans magasin d’applications
Une PWA est un site web accompagné de deux pièces : un manifeste (manifest.webmanifest), qui déclare le nom, les icônes et le mode standalone — l’app s’ouvre dans sa propre fenêtre, sans barre d’adresse — et un service worker, un script qui s’interpose entre l’app et le réseau. C’est lui qui rend possible tout le reste : installation, ouverture de fichiers, hors ligne.
Conséquence pratique : pas de store, pas de compte, pas de CGU d’une plateforme tierce. Les mises à jour arrivent du site lui-même — et, comme nous le verrons, elles sont proposées, jamais forcées.
Installer en deux clics
- Ouvrez documentflare.com dans Chrome ou Edge, sur ordinateur ou Android.
- Cliquez sur l’icône d’installation dans la barre d’adresse — ou, dans le menu du navigateur, « Installer Document Flare » / « Ajouter à l’écran d’accueil ». Sur iOS, passez par Safari : Partager → « Sur l’écran d’accueil ».
- L’application s’ouvre dans sa fenêtre et rejoint le lanceur, le bureau ou l’écran d’accueil, comme n’importe quelle app installée.
Réserve honnête : l’installation fonctionne partout, mais les intégrations système décrites ci-dessous — ouverture directe et partage — sont l’apanage des navigateurs Chromium. Safari installe l’app sans ces handlers.
Ouvrir un PDF par double-clic
Le manifeste déclare un file_handlers : action /?launch=open, pour le type application/pdf et l’extension .pdf. Une fois l’app installée sous Chrome ou Edge (version 102 ou ultérieure, sur ordinateur), un clic droit sur un PDF propose « Ouvrir avec Document Flare » — et le double-clic peut en faire le gestionnaire par défaut.
La mécanique est entièrement locale : le navigateur expose window.launchQueue, notre LaunchQueueBridge y lit les descripteurs de fichiers, en extrait les objets File et les injecte dans l’espace de travail via un relais interne (handoff store). Le document est ouvert, prêt à être traité — il n’a transité par aucun serveur.
Le manifeste déclare aussi un gestionnaire de protocole web+documentflare: : un navigateur compatible peut associer ces liens à l’application. Un lien web+documentflare:merge-pdf ouvre directement la page de l’outil — le slug est borné au format des identifiants du catalogue, jamais un chemin arbitraire.
Recevoir un PDF depuis le partage Android
Second handler du manifeste, share_target : une cible de partage en POST multipart vers /share-target, acceptant application/pdf. Concrètement : depuis le mail, le scanner ou le gestionnaire de fichiers Android, « Partager → Document Flare » dépose le document dans l’app.
Le trajet est défensif par construction. Le service worker intercepte le POST — uniquement s’il s’agit d’une navigation —, vérifie la signature %PDF- de chaque fichier, borne le partage à 10 fichiers et 100 Mio au total, puis dépose les fichiers dans un cache tampon à lecture unique avant de rediriger vers l’espace de travail. Le bridge recharge les fichiers et le tampon est consommé : rien ne persiste après l’ouverture. En sortie de numérisation, c’est le chaînon idéal — voir notre guide pour numériser en PDF depuis le mobile.
Hors ligne après une première visite en ligne
La formulation exacte compte : Document Flare fonctionne hors ligne après une première visite en ligne. Au premier chargement, le service worker précache l’application complète — 380 fichiers, environ 8,4 Mio : pages pré-rendues, code, icônes, manifeste. Le précache avance fichier par fichier ; une coupure ou un quota plein laisse un état « partiel », consigné puis complété automatiquement au retour du réseau.
Ensuite, trois stratégies :
- Navigations : le réseau d’abord, avec repli sur la page cachée, puis sur le shell applicatif — jamais de page blanche.
- Assets applicatifs : servis depuis le cache, en liste blanche stricte — aucun octet de document ne peut y entrer.
- Modèles lourds : l’OCR Tesseract (worker, cœur WASM, langue française — les quatre autres langues à la demande) et la recherche sémantique (~115 Mio de poids ONNX) se téléchargent une fois en ligne, puis persistent dans un cache dédié qui survit aux mises à jour. Si vous ouvrez ces outils hors ligne sans avoir le modèle, l’app le dit avant tout traitement — pas d’échec silencieux.
Deux signaux discrets complètent le dispositif : un badge n’apparaît que hors ligne ou en précache partiel, et quand une nouvelle version est prête, un bandeau propose « Recharger » ou « Plus tard » — le nouveau service worker attend votre geste, il ne s’impose jamais en cours de session.
Le scénario air-gapped, réellement
Conséquence de tout cela : après une session en ligne ayant téléchargé l’app et les modèles souhaités, vous pouvez couper le réseau — mode avion, poste isolé, environnement air-gapped. Les 52 outils locaux du catalogue fonctionnent, l’historique aussi. Et c’est vérifiable plutôt qu’affirmé : dans les outils de développement, onglet Réseau, cochez « Offline » puis traitez un PDF — tout s’exécute, et aucune requête ne transporte le document. L’onglet Application → Cache Storage montre les deux caches, df-app-* et df-models-v1. Le protocole complet de contrôle du trafic est dans notre test réseau en cinq minutes.
Une exception assumée : sept outils marqués « service distant éphémère » — conversions Word/Excel/PowerPoint/HTML vers PDF et inversement, résumé IA — envoient le document à un service éphémère après consentement explicite. Ils exigent une connexion, par construction, et le refusent sans elle.
Historique local : dans IndexedDB, purgable d’un geste
L’historique de l’espace de travail vit dans IndexedDB, sur votre appareil : métadonnées et octets de résultats, borné à 20 entrées et ~25 Mio d’octets conservés — au-delà, les octets des entrées les plus anciennes sont détachés, les métadonnées restent. Le bouton « Vider l’espace » purge intégralement cet historique — noms de fichiers et octets — ainsi que les fichiers chargés et les favoris. Seules survivent les préférences qui désactivent l’historique : ce sont des réglages de confidentialité, pas des données.
Limites honnêtes
- Première visite en ligne obligatoire : rien ne fonctionne hors ligne à froid, et le précache représente ~8,4 Mio de téléchargement.
- iOS : installation possible via Safari, mais ni l’ouverture directe de fichiers, ni la cible de partage, ni le gestionnaire de protocole ne sont pris en charge.
- Outils distants : les sept conversions/résumé mentionnés restent hors de portée sans connexion.
- IA du navigateur : la traduction et le résumé locaux reposent sur les modèles de Chrome/Edge 138+, gérés par le navigateur — pas par notre cache.
- Précache partiel : en cas d’interruption, l’app reste utilisable en ligne et complète son cache au retour réseau — mais le hors ligne n’est garanti qu’une fois l’état complet.
Pour aller plus loin
Le pilier sur les outils PDF sans upload détaille l’architecture locale ; l’article sur la confidentialité du traitement local formalise la promesse. Pour enchaîner les outils sans re-téléverser, voyez les recettes partageables et le traitement par lot. Et si l’enjeu est déontologique, nos verticaux avocats, santé et RH déclinent ces garanties par métier.



