Mammoth.js vs Pandoc WASM: ¿cuál convierte mejor Word a Markdown?
Convertir Word a Markdown en el navegador es un problema resuelto — dos veces. Mammoth.js lleva años como una biblioteca JavaScript ligera que transforma docx en HTML semántico y limpio, mientras que Pandoc, el peso pesado de la conversión de documentos, ahora se compila a WebAssembly y ejecuta el mismo motor en el que confían los usuarios de escritorio. Siguen caminos de ingeniería realmente distintos, y la diferencia aparece justo donde tus documentos se complican.
Esta comparación analiza primero cómo funciona cada pipeline y luego recorre las dimensiones que en la práctica deciden la calidad de conversión: tablas, notas al pie, fórmulas, imágenes, listas y control de cambios. Ambas herramientas se ejecutan por completo en el cliente, así que no es una historia sobre privacidad, sino sobre fidelidad frente a peso.
Dos pipelines, dos filosofías
Mammoth lee el OOXML dentro de un archivo docx y lo recorre con un único objetivo: contenido semántico, no apariencia. Los estilos de párrafo que reconoce se convierten en elementos HTML, y todo lo que considera decorativo — la mayoría de colores, fuentes, espaciados, cuadros de texto, formas — se descarta. El resultado es un HTML famoso por su limpieza que apenas necesita posprocesado antes de entrar en un CMS.
Pandoc desmonta el mismo archivo con un lector nativo de docx, pero en lugar de emitir HTML directamente construye un árbol de sintaxis abstracta tipado. Cada lector — docx, odt, epub, LaTeX — produce ese mismo árbol, y cada escritor lo consume. Esa indirección es lo que permite que un solo análisis produzca Markdown, HTML, reStructuredText, LaTeX o incluso un docx nuevo.
Cómo funciona el mapa de estilos de Mammoth
El punto de extensión de Mammoth es el mapa de estilos: una lista de reglas que asignan estilos de Word a elementos HTML. Una regla puede declarar que un párrafo con un estilo determinado se convierte en h1, o que los fragmentos en negrita con un estilo de carácter personalizado se convierten en strong. Los mapas de estilo permiten adaptar Mammoth a plantillas propias sin tocar su código, y son la razón principal por la que los equipos con una única plantilla de origen bien disciplinada obtienen resultados excelentes.
La contrapartida es que todo lo que queda fuera del mapa y fuera del conjunto de funciones compatibles de Mammoth simplemente desaparece. Para memorandos y entradas de blog eso es una ventaja: la salida se mantiene limpia. Para informes densos con notas al pie y ecuaciones, el silencio no es oro.
Tablas, notas al pie y fórmulas
Las tablas son el primer muro. Mammoth convierte tablas simples en tablas HTML sencillas, pero las tablas anidadas quedan fuera de su modelo y las celdas combinadas rara vez sobreviven intactas. Pandoc analiza la estructura completa de la tabla del archivo, de modo que cada fila y cada celda sobrevive al análisis; lo que ocurre después depende del escritor, porque las pipe tables de Markdown no pueden expresar celdas combinadas en absoluto — ese límite pertenece al formato, no al conversor —, mientras que el escritor HTML conserva la tabla entera con todas sus celdas.
Las notas al pie cuentan una historia parecida. Mammoth reúne las notas al final del documento y enlaza de vuelta a ellas, lo cual está bien para leer en la web. Pandoc modela las notas al pie como nodos de primera clase y emite sintaxis de notas al pie de Markdown genuina o notas al pie nativas de LaTeX. Las ecuaciones son la brecha más clara: Mammoth no convierte las fórmulas OMML de Word, mientras que Pandoc las transforma en notación LaTeX estándar.
Imágenes, listas y revisiones
Las imágenes funcionan en ambos. Mammoth las incrusta como data URIs en el navegador por defecto y te permite usar un manejador personalizado; Pandoc extrae los medios a una carpeta junto a tu Markdown, o los incrusta como base64 cuando necesitas un único archivo autocontenido. Las listas con viñetas y numeradas de cada día son sólidas en ambos motores, incluido el anidamiento de varios niveles.
El control de cambios es el punto sutil. Pandoc expone una opción trackChanges explícita con accept, reject y all, así que eliges qué estado de revisión termina en la salida. Mammoth no tiene modelo de revisiones; el texto sale como si todos los cambios hubieran sido aceptados, sin registro de lo que se aceptó. Ninguna herramienta sustituye a Word para la revisión legal, pero solo una de ellas te da a elegir.
Tamaño del bundle y entrega
La diferencia de tamaño es el coste honesto de la fidelidad. El bundle de Mammoth para navegador pesa unos cientos de kilobytes y carga con la página. Pandoc compilado a WebAssembly ronda los 58 megabytes — una descarga real en el primer uso. Dentro de un Web Worker, sin embargo, el coste se paga una sola vez: este sitio guarda el motor en la Cache API del navegador, de modo que el panel Network permanece vacío en cada conversión posterior a la primera, y la herramienta sigue funcionando sin conexión.
La caché cambia las cuentas. Un motor que se descarga exactamente una vez por navegador y luego se comporta como un binario local es una propuesta muy distinta a volver a descargarlo en cada sesión. Para un equipo que convierte a diario, el coste único es trivial frente a las horas ahorradas reparando tablas rotas.
Alcance de salida y citas
Mammoth genera HTML y, con un poco de ayuda, Markdown — nada más. La lista de escritores de Pandoc es la razón de ser del AST: el mismo análisis que produce Markdown puede producir reStructuredText para documentación de Sphinx, LaTeX para una revista académica o un docx reestilizado mediante una plantilla de referencia. Las citas cierran el círculo: Pandoc ejecuta citeproc contra una bibliografía y un estilo CSL, resolviendo las claves de cita en referencias formateadas en línea — Mammoth no tiene equivalente.
El alcance también abarca los formatos de entrada. Pandoc lee odt, epub, HTML, LaTeX, Org y más, de modo que un solo motor cubre todo un pipeline de contenido. Mammoth es un especialista en docx por diseño, y uno muy bueno; solo que no le pidas que actúe como centro neurálgico.
Cómo elegir entre ambos
Las dos herramientas no son realmente competidoras; responden a preguntas diferentes. Si tus documentos son simples, tu presupuesto de bundle es ajustado y HTML o Markdown es el único destino, Mammoth es excelente: pequeño, rápido y predecible, especialmente junto a un mapa de estilos ajustado a tu plantilla.
Si tus archivos de origen llevan notas al pie, ecuaciones, tablas complejas o citas, o necesitas más de dos formatos de salida, Pandoc es la elección honesta, y ejecutarlo como WebAssembly conserva la privacidad de cero subidas que ambas herramientas comparten. Este sitio eligió la vía de Pandoc exactamente por eso: fidelidad primero, con la descarga pagada una vez y en caché. Prueba tu documento más difícil en ambos y deja que la salida decida.