PDF Toolkit
Una suite basada en el navegador para combinar, dividir, organizar, convertir y comprimir PDFs, donde los archivos nunca salen de su dispositivo.
Next.js 16
React 19
Tailwind CSS 4
pdf-lib
PDF.js
Ghostscript (WASM)
dnd-kit
JSZip

Descripción general
PDF Toolkit es una respuesta del lado del cliente a herramientas como iLovePDF. Gestiona las tareas diarias de PDF que la gente necesita, incluyendo combinar archivos, extraer páginas, reordenar y rotar, convertir a y desde imágenes, y comprimir, y realiza todo dentro del navegador. No se sube nada. El sitio de marketing y el catálogo de herramientas se sitúan delante de un conjunto de espacios de trabajo interactivos, siendo cada uno una herramienta autocontenida.
El problema
Las herramientas populares de PDF en línea funcionan todas de la misma manera. Subes tu documento a un servidor, se procesa y descargas el resultado. Para una conversión rápida de imágenes está bien. Para un contrato firmado, el escaneo de un documento de identidad, un formulario médico o un extracto financiero, implica entregar un archivo confidencial a un tercero y confiar en su política de retención. Había una clara oportunidad para una herramienta que realizara las mismas tareas pero manteniendo cada archivo en el propio dispositivo del usuario.
Mi rol y enfoque
Construí todo el producto: el sitio de marketing, el catálogo de herramientas y cada una de las utilidades funcionales. La decisión central fue arquitectónica: realizar todo el trabajo real de PDF en el navegador. Esa elección guio todo lo demás, ya que el procesamiento del lado del cliente significaba no tener servidores que operar, ningún costo por archivo y una garantía de privacidad que podía afirmar con claridad: sus archivos nunca se envían a ningún lado.
Stack tecnológico
Características clave
Galería


Desafíos y soluciones
La parte compleja de prescindir de un servidor es que el navegador tiene que asumir todo lo que habitualmente haría un servidor. Dividí el trabajo en dos motores: pdf-lib se encarga de las modificaciones estructurales en las que se reescribe la estructura interna del documento, y PDF.js se ocupa del renderizado cada vez que una página necesita mostrarse o convertirse en imagen.
La compresión fue el desafío más destacado. La compresión real de PDF suele depender de Ghostscript, una herramienta nativa y robusta que reside en un servidor. Para mantener intacta la promesa de privacidad, utilicé una compilación en WebAssembly de Ghostscript para que ese mismo motor se ejecute localmente en el navegador. La compresión es real y, aun así, no se sube nada. El reordenamiento de páginas y archivos debía sentirse físico y natural en lugar de engorroso, por lo que utilicé dnd-kit para lograr una interacción de arrastrar y soltar fluida, y empaqueté las exportaciones de múltiples imágenes en un único archivo ZIP mediante JSZip en lugar de disparar una docena de descargas.
Resultado
El resultado es un conjunto de herramientas completo al estilo de iLovePDF que funciona sin backend, sin almacenamiento de archivos y sin costes de alojamiento más allá de la entrega estática, al tiempo que ofrece algo que los servicios tradicionales no pueden: una garantía creíble de que los documentos nunca salen del dispositivo. Es una herramienta realmente útil y demuestra cuánto trabajo pesado pueden asumir los navegadores modernos.
¿Tienes un problema de producto similar?
Comparte el producto actual, el resultado que necesitas y las limitaciones que ya existen en el camino. Usaré eso para definir un primer hito razonable.
Servicios de desarrollo de aplicaciones web