Mi sitio con Eleventy

¿Cómo usar este starter project?

Para sacar el máximo provecho de este starter project te sugiero leer la documentación oficial de Eleventy y personalizarlo a tu gusto y necesidades, pues este proyecto contiene una estructura muy básica para comenzar desarrollar proyectos web minimalistas y desplegarlos en GitHub Pages.

A continuación te doy una revisión de las características que incluye.

Lenguajes de plantillas

En Eleventy puedes usar difernetes lenguajes de plantillas para crear páginas y artículos de blog, este starter project usa: Markdown, HTML y Nunjucks.

Para revisar la sintaxis y estructura de dichos formatos puedes abrir en tu editor de código los archivos index.html, acerca.md y blog.njk que encuentras en la carpeta "code" de este proyecto.

Estructura de Proyecto

La estructura de carpetas y archivos es la siguiente:

code/
  _data/
  _includes/
  public/
  blog/
  index.md
  acerca.html
  blog.njk
docs/
.gitignore
eleventy.config.js
package-lock.json
package.json
README.md

Formato de configuración YAML

En Eleventy, el formato YAML se utiliza en el bloque front matter (al inicio de cada archivo) para definir metadatos. Estos permiten configurar la plantilla a utilizar, establecer títulos, descripciones, etiquetas, fechas y otros parámetros que Eleventy emplea para generar y organizar el contenido del sitio de manera dinámica y optimizada para SEO.

Al inicio de cada uno de los archivos de plantilla de tipo página o artículo de blog encontrarás los siguientes metadatos:

---
layout: layout-base.njk
title: Hola Mundo 🦡🎈
description: Este es un starter project para gestionar y desplegar proyectos web minimalistas con Eleventy 3 y Github Pages.
tags: ["pages", "blog", "peliculas", "series"]
date: "2025-02-20"
---

Descripción de los campos:

Recuerda que puedes agregar tantos metadatos como necesites en tu proyecto. Estos campos te permiten personalizar la forma en que Eleventy procesa, organiza y muestra tu contenido, facilitando la generación dinámica de páginas y la integración de características específicas según los requerimientos de tu proyecto.

Archivo de metadatos del proyecto

Este archivo exporta un objeto de configuración que define metadatos esenciales para el proyecto. Los atributos incluidos son:

export default {
  siteUrl: "https://example.com",
  pathPrefix: "/repo-name/",
  language: "es",
  title: "Eleventy 3 & Github Pages Starter Project",
  description:
    "Este es un starter project para gestionar y desplegar proyectos web minimalistas con Eleventy 3 y Github Pages.",
};

Puedes ver un ejemplo de cómo se invocan estos metadatos en el archivo layout-base.njk.

Recuerda que puedes agregar tantos metadatos como necesites en tu proyecto.

¡Importante! Si despliegas en GitHub Pages:

Debes cambiar el valor del atributo pathPrefix al nombre de tu repositorio en GitHub. Por ejemplo, si tu repositorio se llama mi-proyecto, actualiza este valor a "/mi-proyecto/".

Rutas y enlaces de la carpeta Public

¡Importante!

Para un correcto despliegue de tus archivos públicos (los que están en la carpeta public) como imágenes, tipografías, archivos CSS o JS, etc; debes enlazarlos pensando en que están desde la raíz del servidor por ejemplo:

<link rel="stylesheet" href="/css/styles.css" />

<script src="/js/main.js" type="module"></script>

<img src="/img/eleventy.svg" alt="Eleventy Logo" />

<a href="/acerca/">Acerca</a>

Cómo ves en los ejemplos de código, todas las rutas empiezan con la / que hace referencia a la raíz del servidor.