Personal academic website of Félix P. Leiva — built with Quarto and deployed automatically to GitHub Pages.
Live at: https://felixpleiva.github.io
Workflow note. This README assumes you use GitHub Desktop to manage Git — no terminal
gitcommands needed. For a longer step-by-step walkthrough (including how to write blog posts in R), seeGUIDE.Rmd.
You only do this once.
felixpleiva.github.io (this exact name is required).xxxxxxx.zip somewhere you can find it (e.g. Documents/xxxxxx-site/).felixpleiva-site folder.felixpleiva.github.io.gh-pages and folder to / (root). Click Save.The
gh-pagesbranch doesn’t exist yet — it will be created automatically by the GitHub Action the first time it runs.
In GitHub Desktop:
_quarto.yml in your editor, add or remove a space, save.Go to the Actions tab on GitHub. You’ll see the publish.yml workflow running. After ~2 minutes:
If it loads without styles the very first time, wait 2–5 minutes and refresh with Ctrl+F5 (Windows) or Cmd+Shift+R (Mac).
Every time you want to update the site:
quarto preview
This opens http://localhost:4200 with auto-reload while you edit.
.qmd file (Home, Publications, Projects…) or assets/custom.scss.That’s it — no terminal Git commands needed.
Pushing to main triggers .github/workflows/publish.yml, which:
quarto render._site/ folder to the gh-pages branch.GitHub Pages serves whatever is on gh-pages. You configure it once (step 5 above) and never touch it again.
felixpleiva-site/
├── _quarto.yml # Site config (navbar, footer, theme)
├── index.qmd # Home / About
├── publications.qmd # Selected publications
├── projects.qmd # Research themes
├── teaching.qmd # Workshops, courses, supervision
├── blog.qmd # Blog index (auto-listing)
├── cv.qmd # Embedded PDF viewer
├── posts/ # One folder per blog post
│ └── 2026-04-tdt-curves-brms/
│ ├── index.qmd
│ └── thumbnail.png
├── images/ # Profile photo, logos
├── files/
│ └── cv.pdf # ← replace with your real CV
├── assets/
│ ├── custom.scss # Theme overrides (sage palette)
│ └── styles.css # Extra CSS utilities
├── _extensions/ # Quarto extensions (FontAwesome, Iconify)
├── .github/workflows/publish.yml # CI/CD
├── README.md # This file
└── GUIDE.Rmd # Full editing guide (knit in RStudio)
posts/, create a new folder, e.g. posts/2026-06-my-new-post/.Create a file inside called index.qmd with this front-matter:
---
title: "Post title"
description: "One-sentence summary"
author: "Félix P. Leiva"
date: "2026-06-15"
categories: [R, ggplot2]
image: thumbnail.png
format:
html:
code-fold: false
code-tools: true
code-block-bg: true
code-block-border-left: "#5f7d63"
execute:
warning: false
message: false
---
Write the post in Markdown below the front-matter. R code chunks use:
```{r}
library(ggplot2)
ggplot(mtcars, aes(mpg, wt)) + geom_point()
```
thumbnail.png in the same folder for the listing card.quarto preview./blog automatically.See GUIDE.Rmd for a longer R-focused walkthrough.
| Want to change… | Edit this file |
|---|---|
| Bio, photo, social icons, Interests, Education | index.qmd |
| List of publications | publications.qmd |
| Research themes / project cards | projects.qmd |
| Workshops, courses, supervision | teaching.qmd |
| CV PDF shown on the CV page | replace files/cv.pdf |
| Navbar items, site title, footer | _quarto.yml |
| Colors, fonts, spacing | assets/custom.scss |
Detailed examples for each are in GUIDE.Rmd.
When you want to switch from felixpleiva.github.io to your own domain (e.g. felixleiva.com):
CNAME containing only your domain, e.g. felixleiva.com.At your registrar, add these DNS records:
| Type | Name | Value |
|---|---|---|
| A | @ | 185.199.108.153 |
| A | @ | 185.199.109.153 |
| A | @ | 185.199.110.153 |
| A | @ | 185.199.111.153 |
| CNAME | www | felixpleiva.github.io. |
site-url: in _quarto.yml to the new URL.| Symptom | What to check |
|---|---|
| Site loads without styles right after first deploy | Wait 2–5 minutes, refresh with Ctrl+F5 / Cmd+Shift+R |
| GitHub Action fails with Permission denied | Settings → Actions → General → Workflow permissions = Read and write |
| Action passes but site shows 404 | Settings → Pages → Branch must be gh-pages |
| CV page shows a blank gray box | files/cv.pdf is missing or empty — replace it |
| FontAwesome icons missing | The _extensions/ folder must be committed — verify it’s in GitHub Desktop |
| GitHub Desktop says “Cannot push, fetch first” | Click Fetch origin at the top, then Pull, then Push again |
quarto preview won’t start |
Another preview is already running on port 4200 — close the previous terminal or run quarto preview --port 4321 |
All site content is licensed under CC BY-NC-ND 4.0. Configuration code (Quarto / SCSS) is MIT.