Una caja de herramientas PDF que se instala como una aplicación nativa — icono en el escritorio, ventana dedicada, archivos recibidos directamente desde el sistema — sin pasar por una tienda de aplicaciones ni crear una cuenta: es lo que permite el formato PWA (Progressive Web App). Document Flare explota todas sus capacidades, incluida la más rara: un funcionamiento completo sin conexión, tras una primera visita en línea.
Una aplicación sin tienda de aplicaciones
Una PWA es un sitio web acompañado de dos piezas: un manifiesto (manifest.webmanifest), que declara el nombre, los iconos y el modo standalone — la app se abre en su propia ventana, sin barra de direcciones — y un service worker, un script que se interpone entre la app y la red. Es él quien hace posible todo lo demás: instalación, apertura de archivos, modo sin conexión.
Consecuencia práctica: ni tienda, ni cuenta, ni condiciones de una plataforma tercera. Las actualizaciones llegan del propio sitio — y, como veremos, se proponen, nunca se imponen.
Instalar en dos clics
- Abre documentflare.com en Chrome o Edge, en ordenador o Android.
- Haz clic en el icono de instalación de la barra de direcciones — o, en el menú del navegador, «Instalar Document Flare» / «Añadir a la pantalla de inicio». En iOS, pasa por Safari: Compartir → «Añadir a pantalla de inicio».
- La aplicación se abre en su ventana y se une al lanzador, al escritorio o a la pantalla de inicio, como cualquier app instalada.
Reserva honesta: la instalación funciona en todas partes, pero las integraciones de sistema descritas a continuación — apertura directa y compartir — son patrimonio de los navegadores Chromium. Safari instala la app sin esos handlers.
Abrir un PDF con doble clic
El manifiesto declara un file_handlers: acción /?launch=open, para el tipo application/pdf y la extensión .pdf. Una vez instalada la app en Chrome o Edge (versión 102 o superior, en ordenador), un clic derecho sobre un PDF propone «Abrir con Document Flare» — y el doble clic puede convertirla en el gestor por defecto.
La mecánica es enteramente local: el navegador expone window.launchQueue, nuestro LaunchQueueBridge lee ahí los descriptores de archivos, extrae los objetos File y los inyecta en el espacio de trabajo mediante un relevo interno (handoff store). El documento queda abierto, listo para ser procesado — no ha transitado por ningún servidor.
El manifiesto declara también un gestor de protocolo web+documentflare:: un navegador compatible puede asociar esos enlaces a la aplicación. Un enlace web+documentflare:merge-pdf abre directamente la página de la herramienta — el slug está acotado al formato de los identificadores del catálogo, nunca una ruta arbitraria.
Recibir un PDF desde el menú compartir de Android
Segundo handler del manifiesto, share_target: un destino de compartición en POST multipart hacia /share-target, que acepta application/pdf. En concreto: desde el correo, el escáner o el gestor de archivos de Android, «Compartir → Document Flare» deposita el documento en la app.
El recorrido es defensivo por construcción. El service worker intercepta el POST — solo si se trata de una navegación —, verifica la firma %PDF- de cada archivo, acota el envío a 10 archivos y 100 Mio en total, luego deposita los archivos en un caché temporal de lectura única antes de redirigir al espacio de trabajo. El bridge recarga los archivos y el temporal se consume: nada persiste tras la apertura. A la salida de un escaneo, es el eslabón ideal — ver nuestra guía para escanear a PDF desde el móvil.
Sin conexión tras una primera visita en línea
La formulación exacta importa: Document Flare funciona sin conexión tras una primera visita en línea. En la primera carga, el service worker precachea la aplicación completa — 380 archivos, unos 8,4 Mio: páginas prerrenderizadas, código, iconos, manifiesto. El precaché avanza archivo a archivo; un corte o una cuota llena deja un estado «parcial», registrado y luego completado automáticamente al volver la red.
Después, tres estrategias:
- Navegaciones: la red primero, con repliegue sobre la página cacheada, luego sobre el shell de la aplicación — nunca una página en blanco.
- Assets de la aplicación: servidos desde el caché, en lista blanca estricta — ningún byte de documento puede entrar ahí.
- Modelos pesados: el OCR Tesseract (worker, núcleo WASM, idioma francés — los otros cuatro idiomas bajo demanda) y la búsqueda semántica (~115 Mio de pesos ONNX) se descargan una vez en línea, luego persisten en un caché dedicado que sobrevive a las actualizaciones. Si abres esas herramientas sin conexión sin tener el modelo, la app lo dice antes de cualquier procesamiento — sin fallo silencioso.
Dos señales discretas completan el dispositivo: una insignia solo aparece sin conexión o con precaché parcial, y cuando una nueva versión está lista, un banner propone «Recargar» o «Más tarde» — el nuevo service worker espera tu gesto, nunca se impone en mitad de una sesión.
El escenario air-gapped, de verdad
Consecuencia de todo ello: tras una sesión en línea que haya descargado la app y los modelos deseados, puedes cortar la red — modo avión, equipo aislado, entorno air-gapped. Las 52 herramientas locales del catálogo funcionan, el historial también. Y es verificable en lugar de afirmado: en las herramientas de desarrollo, pestaña Red, marca «Sin conexión» y procesa un PDF — todo se ejecuta, y ninguna petición transporta el documento. La pestaña Aplicación → Cache Storage muestra los dos cachés, df-app-* y df-models-v1.
Una excepción asumida: siete herramientas marcadas «servicio remoto efímero» — conversiones Word/Excel/PowerPoint/HTML a PDF y a la inversa, resumen IA — envían el documento a un servicio efímero tras consentimiento explícito. Exigen conexión, por construcción, y se niegan a funcionar sin ella.
Historial local: en IndexedDB, purgable de un gesto
El historial del espacio de trabajo vive en IndexedDB, en tu dispositivo: metadatos y bytes de resultados, acotado a 20 entradas y ~25 Mio de bytes conservados — más allá, los bytes de las entradas más antiguas se desvinculan, los metadatos permanecen. El botón «Vaciar el espacio» purga íntegramente ese historial — nombres de archivos y bytes — así como los archivos cargados y los favoritos. Solo sobreviven las preferencias que desactivan el historial: son ajustes de privacidad, no datos.
Límites honestos
- Primera visita en línea obligatoria: nada funciona sin conexión en frío, y el precaché representa ~8,4 Mio de descarga.
- iOS: instalación posible vía Safari, pero ni la apertura directa de archivos, ni el destino de compartición, ni el gestor de protocolo están soportados.
- Herramientas remotas: las siete conversiones/resumen mencionadas quedan fuera de alcance sin conexión.
- IA del navegador: la traducción y el resumen locales reposan sobre los modelos de Chrome/Edge 138+, gestionados por el navegador — no por nuestro caché.
- Precaché parcial: en caso de interrupción, la app sigue usable en línea y completa su caché al volver la red — pero el modo sin conexión solo está garantizado una vez el estado completo.
Para ir más lejos
El pilar sobre las herramientas PDF sin subida detalla la arquitectura local; el artículo sobre la privacidad del procesamiento local formaliza la promesa. Para encadenar herramientas sin volver a subir archivos, consulta el procesamiento por lotes. Y si el contexto es profesional, nuestros artículos sectoriales sobre sanidad y RRHH aplican estas garantías por oficio.



