Conversor de Markdown a HTML
Pega tu Markdown abajo y obtén HTML limpio al instante, más una vista previa en vivo — nada de lo que pegues sale de tu navegador.
Vista previa
Código HTML
Un analizador hecho a mano para el Markdown que la gente realmente escribe
Esta herramienta procesa tu texto bloque por bloque — una línea
de encabezado, un bloque de código con delimitadores, una serie
de elementos de lista, un párrafo — y luego aplica el formato en
línea (negrita, cursiva, enlaces, código en línea) dentro de
cada bloque. Cada carácter de texto plano se escapa
(&, <, >)
antes de construir ninguna etiqueta, así que el HTML o las
etiquetas de script pegadas siempre aparecen como texto inerte
en vez de marcado en vivo — importante porque el HTML que
genera esta herramienta suele incrustarse directamente en otra
página. Es un subconjunto deliberadamente honesto, no un motor
completo de CommonMark: consulta las preguntas frecuentes para
ver exactamente qué entra y qué queda fuera.
Ejemplo práctico
Entrada:
# Notas del Proyecto Esto es **importante** y *vale la pena leerlo*. - Primer punto - Segundo punto > Recuerda revisar el archivo `config.json`.
Salida:
<h1>Notas del Proyecto</h1> <p>Esto es <strong>importante</strong> y <em>vale la pena leerlo</em>.</p> <ul><li>Primer punto</li><li>Segundo punto</li></ul> <blockquote><p>Recuerda revisar el archivo <code>config.json</code>.</p></blockquote>
Preguntas frecuentes
¿Esta herramienta cumple por completo la especificación CommonMark?
No, y no pretende hacerlo. Esta herramienta cubre el Markdown que la gente realmente escribe en el día a día — encabezados, negrita y cursiva, enlaces e imágenes, listas ordenadas y sin ordenar, bloques de código con delimitadores, código en línea, citas y líneas horizontales. No intenta cumplir la especificación completa de CommonMark en casos límite poco habituales: listas anidadas, enlaces de estilo referencia ("[texto][ref]" con una línea de definición aparte), tablas, notas al pie, HTML incrustado directamente y encabezados de estilo setext (subrayar una línea con === o ---) quedan todos fuera de lo que este analizador hecho a mano procesa. Para un README, un comentario o un borrador de blog, esto es suficiente; para un documento que dependa mucho de esas funciones avanzadas, algo de esa sintaxis aparecerá tal cual, sin convertir.
¿Qué pasa si mi Markdown contiene HTML literal, como una etiqueta <script> que escribí a mano?
Se muestra, nunca se ejecuta. Cada carácter de tu texto plano — incluida cualquier etiqueta HTML que hayas escrito directamente en vez de generarla mediante sintaxis Markdown — se escapa a su forma de texto literal (< se convierte en <, y así con el resto) antes de que esta herramienta construya ninguna marca real. Es una decisión de seguridad deliberada, no solo un límite de alcance: este analizador no tiene ninguna función de HTML incrustado directo, así que no existe ninguna vía por la que algo que hayas pegado se convierta en una etiqueta <script> o <img onerror=...> viva en la salida. Las únicas etiquetas que aparecen como HTML real y activo son las que esta herramienta genera a partir de sintaxis Markdown verdadera — encabezados, negrita, enlaces, etc. — algo que importa especialmente porque ese HTML generado suele incrustarse directamente en la página de otra persona.
¿Se sube mi Markdown a algún servidor?
No. Toda la conversión — analizar tu Markdown y construir el HTML — ocurre en tu navegador con procesamiento de texto en JavaScript puro; nada de lo que escribas o pegues se envía ni se guarda en un servidor. Esto importa especialmente aquí porque los borradores en Markdown suelen ser publicaciones sin publicar, documentación interna o notas que alguien preferiría no subir.
¿Por qué la herramienta muestra una vista previa en vivo y también el HTML sin procesar?
Cumplen funciones distintas. La vista previa se renderiza dentro de un iframe aislado (sin scripts permitidos, separado del resto de esta página) para que veas cómo se verá el formato realmente — encabezados, negrita, listas — sin que nada de tu contenido pegado pueda afectar a este sitio. El cuadro de HTML de abajo es el marcado literal que generó esta herramienta, listo para copiar en una plantilla, un campo de CMS o un sitio estático.
¿Cómo maneja algo como ***negrita y cursiva a la vez***?
De forma imperfecta, por el diseño honesto del subconjunto que implementa. La negrita (** o __) y la cursiva (* o _) son cada una su propio paso de expresión regular en lugar de un único analizador recursivo de énfasis, así que justo en el límite donde se juntan tres asteriscos, el resultado puede salir como solo negrita o solo cursiva en lugar de ambas anidadas. La **negrita** y la *cursiva* normales, usadas por separado incluso en la misma frase, se convierten de forma correcta y predecible — es específicamente el caso combinado de triple marcador en los bordes lo que este analizador no resuelve del todo.