# Libellus > [!noteinfo] > Marco Noris · Última actualización: 06.01.2026 · #jekyll #obsidian #file-over-app La carpeta _Libellus_[^1] en lab.marconoris.com contiene parte de los archivos que componen mi portfolio, [marconoris.com](https://marconoris.com) y que están incluidos en mi bóveda de Obsidian y enlazados en un contexto más amplio: esta web. Mi portfolio está construido sobre una arquitectura sencilla que prioriza la autonomía y la preservación a largo plazo. En lugar de depender de servicios comerciales como WordPress o Wix, las páginas se generan automáticamente a partir de archivos de texto almacenados en mi propio ordenador y se publican desde un entorno que gestiono directamente. Esto me permite mantener la propiedad y el control de mis contenidos, sin depender de terceros ni de formatos cerrados, y evita tener que empezar de cero cada vez que cambio de herramienta o de plataforma. Esta elección se alinea con la filosofía _[file over app](https://stephango.com/file-over-app)_: las aplicaciones son efímeras, mientras que los archivos —legibles, portables y bajo tu control— pueden perdurar en el tiempo. Para mí, es una forma de cuidar los materiales —textos, imágenes, notas— y garantizar que sigan siendo accesibles a largo plazo, sin bloqueos ni dependencias impuestas por las plataformas. Desde el punto de vista técnico, Libellus se genera automáticamente con Jekyll y se despliega en Netlify a partir de un repositorio en GitHub. De forma paralela, se mantiene una copia completa del sitio en mi ordenador, lo que permite trasladar la versión estática a otros servidores si fuera necesario. La paleta cromática de la web se basa en [Flexoki](https://stephango.com/flexoki), de Steph Ango, y el diseño adopta principios de minimalismo funcional inspirados en su propio trabajo web. Del ecosistema de [Kepano](https://github.com/kepano) se ha integrado la _Image Grid_ desarrollada para Obsidian (como siempre, gracias, Steph). Finalmente, un _plugin_ en Ruby, desarrollado _ex novo_, reescribe los _wikilinks_ y la sintaxis propia de Obsidian para garantizar la compatibilidad semántica y estructural entre Jekyll, la bóveda de Obsidian y la publicación web en [lab.marconoris.com](https://lab.marconoris.com) mediante Obsidian Publish. > [!Info] > - **Producción (canónica)**: [https://marconoris.com](https://marconoris.com) > - **Netlify (deploys)**: [https://marconoris.netlify.app](https://marconoris.netlify.app) > - **Aliases**: > - [https://libellus.marconoris.com](https://libellus.marconoris.com) > - [https://marconoris.art](https://marconoris.art) ## Resumen de la app Sitio estatico (Jekyll) para `marconoris.com`. ## Que es Sitio web estatico generado con Jekyll para publicar obras, cuadernos y proyectos de Marco Noris. El repo incluye contenido en Markdown y plugins para compatibilidad con sintaxis de Obsidian durante el build. ## Para quien Persona editora del sitio (autor: Marco Noris) que escribe en Markdown/Obsidian y publica en la web sin backend. ## Que hace - Genera un sitio estatico desde colecciones Jekyll y paginas (contenido en carpetas con prefijo `_`). - Convierte sintaxis Obsidian: `[[wikilinks]]`, `![[transclusiones]]` y callouts `> [!tipo]`. - Reescribe enlaces relativos `../` hacia `obsidian_publish_baseurl` (Obsidian Publish). - Incrusta YouTube/Vimeo cuando la URL aparece sola o como imagen Markdown, con allowlist de parametros. - Auto-genera `slug`/`permalink` latinizado desde `title` (y regla especial para `news`). - Autolinka URLs sueltas tras render (desactivable con `autolink_urls: false` en front matter). - Soporta galerias en proyectos (mencionado en la documentacion del repo: PhotoSwipe). - Soporta `cssClasses` en el front matter. - Soporta img-grid de Kepano. ## Como funciona - **Entrada**: Markdown en colecciones y paginas + datos en `_data/` + assets (`assets/`, `images/`). - **Motor**: Jekyll (Ruby) + Kramdown (GFM) segun `_config.yml` (colecciones, permalinks, defaults). - **Pipeline (hooks)**: - `pre_render`: `slug_from_title` - `obsidian_*` - `video_markdown_embed` - `post_render`: `url_linkify` - **Transclusiones**: solo incrustan HTML si el origen existe en el filesystem durante el build; si no, caen a enlace. - **UI**: Liquid (`_layouts/`, `_includes/`) + Sass (`_sass/`). - **Salida**: `_site/` (HTML estatico). - **Deploy**: Netlify ejecuta `bundle install && bundle exec jekyll build` y publica `_site/`. %%- **Backend/DB/API**: Not found in repo.%% ## Como ejecutar - **Requisitos**: Ruby `3.2.9` + Bundler (version: Not found in repo). - **Instalar**: `bundle install` - **Dev**: `bundle exec jekyll serve` - **Build**: `bundle exec jekyll build` (salida en `_site/`) --- Evidencia: `Gemfile`, `_config.yml`, `netlify.toml`, `_plugins/`, `OBSIDIAN-PLUGINS.md`. [^1]: Libellus: del latín, diminutivo de liber (libro), ‘librito’, cuadernillo; pequeño volumen para notas, poemas, epigramas o tratados breves. Hoy, Libellus es un cuaderno vivo: archivo en marcha, notas de camino y piezas que, juntas, componen un cuerpo mayor.