Taller práctico · de cero a GitHub Pages en 60 minutos
2026-09-01
Al terminar tendrás un miniportafolio profesional que:
Evidencia final
Una persona abre tu enlace y entiende en menos de un minuto:
Regla del taller: primero hacemos que funcione; después lo hacemos bonito.
Verde
Muestra tu pantalla y ayuda a alguien cercano.
Amarillo
Compara comandos y rutas con tu pareja.
Rojo
Usa proyecto-demo/ y vuelve al flujo común.
5–13 min · cuatro piezas y una verificación
Idea clave: Quarto es una aplicación independiente. No se instala con pip. Python solo es necesario cuando el documento ejecuta código Python.
| Pieza | Windows | macOS |
|---|---|---|
| Quarto | instalador .msi |
instalador .pkg |
| Python 3 | python.org · activar Add to PATH |
python.org o Homebrew |
| Editor | VS Code + extensiones Quarto y Python | igual |
| Git | Git for Windows | Xcode CLT o instalador de Git |
Windows · PowerShell
Cuando aparezca (.venv) al inicio de la terminal, estás dentro del entorno.
Avanzamos cuando: quarto, python, jupyter y git muestran una versión. No es necesario que todos tengan la misma versión.
13–22 min · de texto plano a página web
.qmd
El archivo fuente es texto legible, versionable y reutilizable. La salida es desechable: se puede regenerar.
index.qmdindex.qmd
Las líneas entre --- son YAML; el resto es Markdown.
_quarto.yml
project decide cómo se organiza el conjunto de archivos.
website define navegación e identidad del sitio.
format controla cómo se ve y qué produce.
Proyecto
_quarto.yml
Valores compartidos por todos los documentos.
Documento
YAML al inicio de analisis.qmd
Excepciones para una página.
Comando
quarto render --to pdf
Elección puntual al compilar.
Piensa en valores generales → ajustes locales → orden de esta ejecución.
index.qmd.Avanzamos cuando: puedes señalar qué parte es YAML, cuál es Markdown y cuál es la salida HTML.
22–32 min · estructura, navegación y vista previa
mi-portafolio/
├── _quarto.yml # configuración compartida
├── index.qmd # portada
├── about.qmd # segunda página
└── styles.css # detalles visuales
_quarto.yml
Guarda el archivo: quarto preview detecta el cambio y reconstruye el sitio.
32–42 min · código, resultados y decisiones editoriales
Ventas mensuales (datos ficticios).
| Opción | Úsala cuando… | Valor típico |
|---|---|---|
echo |
decides si mostrar el código | true / false |
output |
decides si mostrar el resultado | true / false |
warning |
limpias ruido técnico | false |
fig-cap |
la gráfica necesita contexto | texto breve |
code-fold |
el sitio debe ser legible y auditable | true |
Antes
Escribe una pregunta que pueda responderse con tus datos.
Durante
Ejecuta una celda y conserva solo el código que aporta confianza.
Después
Escribe una oración: “Esto sugiere que…”
Avanzamos cuando: la página muestra un resultado y una interpretación, no solo código.
42–50 min · formato no es lo mismo que tipo de proyecto
No copies y pegues el análisis. Renderiza otra presentación del mismo análisis.
reporte.qmd
No dupliques el documento. Marca qué bloque pertenece a cada salida.
quarto render mantiene ambas versiones sincronizadas.| Tipo de proyecto | Organiza | Salidas habituales |
|---|---|---|
default |
reportes independientes | HTML, PDF, DOCX |
website |
navegación, páginas, blog | sitio HTML |
book |
capítulos, índice, referencias | libro HTML, PDF, EPUB |
manuscript |
artículo + notebooks + revisión | HTML, PDF, DOCX |
project.type define la estructura. format define la representación. Un libro HTML también es un sitio navegable.
_quarto.yml
Para practicar sin editar en vivo, abre proyecto-demo/_quarto-book.yml.
proyecto/
├── reporte.qmd # ensambla todo
└── secciones/
├── intro.qmd
├── metodologia.qmd
└── resultados.qmd
Por qué importa: varias personas editan secciones distintas sin pisarse el trabajo en un mismo archivo, y cada sección se puede previsualizar sola.
Durante el taller
Si TinyTeX aún se descarga, continúa con HTML. La instalación puede terminar después.
Para entregar
Genera PDF al final y revisa saltos de página, figuras y referencias.
50–58 min · de localhost a una URL compartible
Terminal
Antes de git add ., confirma que .venv/, .quarto/ y _site/ estén en .gitignore. Nunca publiques contraseñas, tokens ni archivos .env.
quarto publishQuarto:
gh-pages;git push.qmd
main
Después puedes automatizar el paso amarillo con GitHub Actions. Hoy priorizamos una primera publicación controlada.
Abre https://USUARIO.github.io/mi-portafolio/ en una ventana privada.
Abre
La URL carga sin iniciar sesión.
Navega
No hay enlaces rotos.
Explica
La portada dice qué problema resolviste.
Atribuye
Aparecen tu nombre y contacto.
Publicado no significa terminado: significa que ya puedes recibir retroalimentación real.
58–60 min · el flujo profesional en seis verbos
.qmd reúne narrativa, configuración y código._quarto.yml comparte decisiones para todo el proyecto.quarto preview acorta el ciclo escribir → ver → corregir.Ticket de salida: pega tu URL o escribe el único comando que todavía te bloquea.
Material de respaldo; no forma parte del reloj de 60 minutos
| Síntoma | Comprueba | Salida rápida |
|---|---|---|
quarto: command not found |
instalación + reiniciar terminal | abrir VS Code de nuevo |
python no existe |
py en Windows / python3 en macOS |
recrear .venv |
No module named jupyter |
entorno activo | python -m pip install jupyter |
| YAML no compila | indentación con espacios | pegar el YAML mínimo |
| PDF falla | quarto list tools |
entregar HTML y revisar TinyTeX |
| Pages da 404 | rama y Settings → Pages | esperar 1–3 min y recargar |
Ejecuta primero quarto publish gh-pages una vez. Después crea:
.github/workflows/publish.yml
on:
workflow_dispatch:
push:
branches: [main]
name: Quarto Publish
jobs:
build-deploy:
runs-on: ubuntu-latest
permissions:
contents: write
steps:
- name: Descargar repositorio
uses: actions/checkout@v7
- name: Instalar Quarto
uses: quarto-dev/quarto-actions/setup@v2
- name: Renderizar y publicar
uses: quarto-dev/quarto-actions/publish@v2
with:
target: gh-pages
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}En Settings → Actions → General → Workflow permissions, habilita lectura y escritura. Si el workflow ejecutará Python, también debe instalar Python y requirements.txt.
Navegar
→ siguiente paso · ← anterior · Esc mapa.
Enseñar código
Las líneas resaltadas cambian con →. Haz clic en los números de anotación.
Acompañar
S abre notas del presentador · B pausa · C pizarrón.
El mejor siguiente paso no es aprender todas las opciones: es publicar una historia breve con datos reales.

Facultad de Ciencias UNAM · Taller de Quarto