Andrea, programador novel en Rust, presenta un compilador propio de Markdown a HTML desarrollado tras 12-13 horas de trabajo en su tiempo libre, sin recurrir a herramientas de inteligencia artificial generativa. El proyecto nació como una alternativa minimalista al generador de sitios estáticos Hugo, del que echa en falta una opción más sencilla que no requiera invertir mucho tiempo en elegir temas y configuraciones.
El compilador escanea el directorio post/, procesa los bloques de cada archivo y, dentro de cada bloque, analiza los elementos en línea para construir una representación intermedia basada en AST (árbol de sintaxis abstracta). El resultado se vuelca en archivos HTML mediante plantillas básicas, apoyándose en la implementación del trait Display para los tipos Block e Inline. Andrea reconoce haber leído el Dragon Book, lo que le sirvió de base conceptual, y señala que varias de sus decisiones de diseño guardan parecido con las de compiladores de Markdown ya existentes, incluido el propio Hugo.
Cada post incorpora un bloque de front matter en YAML donde el título y la fecha son obligatorios —esta última en formato YYYY-MM-DD y usada para ordenar el índice— junto a campos opcionales como descripción, etiquetas y un flag draft que, activado, excluye la entrada del listado. La cobertura actual de CommonMark incluye encabezados, párrafos, bloques de código, listas ordenadas y desordenadas, citas, y elementos en línea como código, tachado, negrita, cursiva, enlaces e imágenes —estas últimas servidas desde un directorio static/—. El sitio generado dispone de un único index.html sin paginación ni router en el cliente, con búsqueda filtrable mediante una barra superior (atajo / y borrado con Esc), navegación tipo Vim con soporte de yank, y filtrado por etiquetas. El código está disponible en el repositorio de GitHub andimatteo/markdown-compiler.
