# 1. Instalar os pacotes necessários -----
# Instala o pak, se você não tiver
install.packages("pak")
# Instala o babelquarto, se você não tiver
pak::pak("ropensci-review-tools/babelquarto")
# 2. Limpa a casa -----
rm(list = ls())
# 3. Manda o babelquarto criar o diretorio -----
# tutorial original aqui: https://docs.ropensci.org/babelquarto/articles/babelquarto.html#starting-a-multilingual-website
# Definindo o diretório pai e o diretório do projeto
parent_dir <- "/mnt/..."
project_dir <- "nyd_blog"
# Chamando a função para criar o site multilíngue
babelquarto::quarto_multilingual_website(
parent_dir = parent_dir,
project_dir = project_dir,
main_language = "pt",
further_languages = c("en")
)
# 4. Edita os arquivos, explora tudo, e renderiza -----
babelquarto::render_website(file.path(parent_dir, project_dir))
# Se sua IDE não abrir o site automaticamente, você pode usar o servr pra ver manualmente:
servr::httw("_site")Não que te interesse, mas: Criando o blog
Vamos postar como essa troça foi feita, compartilhar o que tio Claudio ensinou.
Começa instalando o R, depois a interface pra ele (RStudio ou VSCode ou Positron, eu prefiro Positron). Como? Se vira, procurae. To partindo do principio que você já é usuário de R e não precisa de ajuda com isso.
Depois instala o Quarto, que vai renderizar o blog (transformar arquivos como esse de .qmd em HTML pra publicar no site). Como? Tah bom, aqui eu ajudo: Usa quarto::quarto_path() pra ver se o quarto já tá instalado e disponível. Se não estiver… - Baixa o Quarto: https://quarto.org/docs/get-started/?spm=a2ty_o01.29997173.0.0.3fc855fbCHC5Br
Depois disso, bora instalar o pacote do babelquarto. Parece que ele não está atualizado no CRAN, por isso instalei direto do GitHub. Eu uso o pacote pak pra instalar, porque no linux ele também instala as dependências. Se você não tiver o pak, instala ele primeiro e me agradece qualquer hora.
Esse primeiro site é só um template genérico. Para transformar ele em um blog eu fiz as seguintes edições: - Os arquivos index.qmd e index.en.qmd foram editados pra mudar o título do site, a descrição, e o layout da página inicial. - Esses mesmos arquivos receberam a seção listing: que diz pro Quarto onde procurar os posts do blog, como ordenar eles, e qual layout usar pra listagem.
---
title: "nyd, sério..."
listing:
contents: posts # Força o Quarto a olhar dentro do diretório posts/ pelos posts.
sort: "date desc" # Ordena os posts por data, do mais recente pro mais antigo.
type: default # Usa o layout padrão de feed de blog do Quarto (Pode mudar para grid ou table).
---- Criei o diretório
posts/que vai conter os posts do blog. - Cada post vai ter um diretório próprio, com um arquivo
index.qmddentro. O nome do diretório é a data do post, no formatoYYYY-MM-DD-titulo-do-post. Exemplo:posts/2026-0x-0y-titulo/index.qmd. - Cada post vai ter um arquivo
index.qmdem cada idioma. Exemplo:
posts/2026-03-01-titulo/index.qmd # Português
posts/2026-03-01-titulo/index.en.qmd # InglêsEsses arquivos vao usar um cabeçalho YAML parecido com esse:
---
title: "Não que te interesse, mas: Criando o blog"
date: "2026-09-06"
categories: [tutorial, blog]
lang: "pt"
draft: false
---O parametro draft: true faz com que o post não seja publicado.
Depois disso pode renderizar o site de novo e ver se tudo funcionou.
# renderiza
babelquarto::render_website(file.path(parent_dir, project_dir))
# abre
servr::httw("_site")Testa tudo… - Idioma principal abre em / e idioma secundário abre em /2n/ (ou /en/ no caso do inglês)? - Clica em um post que só existe em um idioma, e vê se o switcher de idioma não quebra.
Checar anonimicidade do site: - Grep o HTML renderizado pra ver se não tem caminhos de arquivo local, hostname da máquina, ou tags do Quarto/Pandoc. Nada disso deve aparecer no HTML final. - Testa o que acontece quando um post publicado linka pra um arquivo dentro do diretório lixeira/ que é excluído do site. O build deve falhar, não copiar o arquivo pra o site silenciosamente.
Vamos testar links para um post válido: Link válido: link pro post válido Link inválido: link pro post inválido