Começando

Disciplina nova

  1. Crie o repositório a partir do template (ou use o botão Use this template no GitHub):

    gh repo create felipelmc/Minha-Disciplina --public --template felipelmc/Course-Notes-Template --clone
    cd Minha-Disciplina
  2. Rode o script de configuração. Ele preenche título, subtítulo, instituição e período no _quarto.yml, apaga as páginas do guia e os exemplos e deixa um modelo de aula em aulas/_modelo.qmd:

    ./scripts/novo-curso.sh "Minha Disciplina" "Subtítulo" "IESP-UERJ" "2026.2"
  3. Instale os pacotes de R listados no DESCRIPTION, renderize e publique:

    Rscript -e 'pak::local_install_deps()'
    quarto render
    git add -A && git commit -m "Primeira versão" && git push
    gh api -X PUT repos/felipelmc/Minha-Disciplina/pages -f build_type=workflow

O site passa a ficar em felipelamarca.com/Minha-Disciplina/, porque o domínio vem do repositório do site pessoal.

Repositório existente

  1. Instale a extensão na raiz do repositório:

    quarto add felipelmc/Course-Notes-Template
  2. No _quarto.yml, troque type: book por type: course-notes, apague o bloco format: (o formato vem da extensão) e os campos de tema, fonte e numeração. Remova também output-dir: docs: a publicação passa a ser feita pelo GitHub Actions.

  3. Copie .github/workflows/publish.yml, .gitignore e CLAUDE.md deste repositório.

  4. Renderize localmente e faça o commit de _freeze/. Veja Publicação para entender por quê.

Atualizar o template

Quando o template ganhar uma versão nova, atualize a extensão em cada disciplina:

quarto update extension felipelmc/Course-Notes-Template

A atualização troca só a pasta _extensions/felipelmc/course-notes/. O conteúdo e o _quarto.yml da disciplina não mudam.

Estrutura de um repositório

Minha-Disciplina/
├── _quarto.yml            # dados da disciplina e ordem dos capítulos
├── _extensions/           # o template (não edite aqui; atualize com quarto update)
├── index.qmd              # página inicial: ementa, professores, plano de aulas
├── aulas/aula-01.qmd      # uma página por aula, com número de dois dígitos
├── listas/index.qmd       # índice das listas de exercícios
├── trabalhos/             # uma pasta por trabalho (index.qmd, PDF, dados)
├── referencias.qmd        # todas as referências da disciplina
├── references.bib         # bibliografia única
├── DESCRIPTION            # pacotes de R usados nas páginas
├── _freeze/               # resultados já computados (vai para o git)
└── CLAUDE.md              # convenções para o Claude Code

O _quarto.yml de uma disciplina

project:
  type: course-notes

book:
  title: "Lego III"
  subtitle: "Inferência causal · IESP-UERJ · 2026.1"
  author: "Felipe Lamarca"
  site-url: https://felipelamarca.com/Lego-III/
  repo-url: https://github.com/felipelmc/Lego-III   # apague em repositório privado
  navbar:
    left:
      - text: "Lego III"
        href: index.qmd
  chapters:
    - index.qmd
    - part: "Aulas"
      chapters:
        - href: aulas/aula-01.qmd
          text: "01 · Resultados potenciais"
    - part: "Trabalhos"
      chapters:
        - trabalhos/index.qmd
    - referencias.qmd

bibliography: [references.bib]

O texto de cada capítulo na barra lateral ("01 · Resultados potenciais") é escrito à mão porque o Quarto numera capítulos pela posição na lista, e não pelo número da aula. A checagem do CI confere se o número no texto bate com o campo aula: da página.