Skip to content

Commit

Permalink
Add vignette
Browse files Browse the repository at this point in the history
  • Loading branch information
dieghernan committed Jul 8, 2024
1 parent c54287b commit cf5b65f
Show file tree
Hide file tree
Showing 8 changed files with 50 additions and 171 deletions.
7 changes: 6 additions & 1 deletion CITATION.cff
Original file line number Diff line number Diff line change
Expand Up @@ -61,7 +61,7 @@ references:
title: pkgdown
abstract: 'pkgdown: Make Static HTML Documentation for a Package'
notes: Imports
url: https://pkgdown.r-lib.org
url: https://pkgdown.r-lib.org/
repository: https://CRAN.R-project.org/package=pkgdown
authors:
- family-names: Wickham
Expand All @@ -74,6 +74,11 @@ references:
- family-names: Salmon
given-names: Maëlle
orcid: https://orcid.org/0000-0002-2815-0399
- family-names: Roy
given-names: Olivier
- family-names: Brüggemann
given-names: Salim
orcid: https://orcid.org/0000-0002-5329-5987
year: '2024'
version: '>= 2.0.8'
- type: software
Expand Down
2 changes: 1 addition & 1 deletion DESCRIPTION
Original file line number Diff line number Diff line change
Expand Up @@ -30,5 +30,5 @@ Config/testthat/edition: 3
Encoding: UTF-8
Language: es_ES
Roxygen: list(markdown = TRUE)
RoxygenNote: 7.3.1
RoxygenNote: 7.3.2
X-schema.org-isPartOf: https://ropenspain.es/
4 changes: 2 additions & 2 deletions codemeta.json
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@
"name": "R",
"url": "https://r-project.org"
},
"runtimePlatform": "R version 4.4.0 (2024-04-24 ucrt)",
"runtimePlatform": "R version 4.4.1 (2024-06-14)",
"author": [
{
"@type": "Person",
Expand Down Expand Up @@ -146,7 +146,7 @@
"SystemRequirements": null
},
"isPartOf": "https://ropenspain.es/",
"fileSize": "221.3KB",
"fileSize": "219.251KB",
"citation": [
{
"@type": "SoftwareSourceCode",
Expand Down
2 changes: 1 addition & 1 deletion inst/schemaorg.json
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@
"name": "R",
"url": "https://r-project.org"
},
"runtimePlatform": "R version 4.4.0 (2024-04-24 ucrt)",
"runtimePlatform": "R version 4.4.1 (2024-06-14)",
"version": "0.2.0"
},
{
Expand Down
1 change: 0 additions & 1 deletion man/ros_build.Rd

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

33 changes: 19 additions & 14 deletions vignettes/articles/descargas.Rmd
Original file line number Diff line number Diff line change
Expand Up @@ -52,18 +52,7 @@ dwn <- lapply(mypaks, cranlogs::cran_downloads, from = "2016-01-01")
dwn <- dwn %>%
bind_rows() %>%
tidyr::drop_na() %>%
filter(count > 0)
# By month
library(lubridate)
dwn_m <- dwn %>%
mutate(m = lubridate::ceiling_date(dwn$date, "month") - 1) %>%
group_by(package, m) %>%
summarise(downloads = sum(count))
as_tibble()
# First date on CRAN
Expand All @@ -89,6 +78,23 @@ first_date_on_cran <- function(pkg) {
fechas <- lapply(unique(dwn$package), first_date_on_cran) %>%
bind_rows()
dwn <- dwn %>%
left_join(fechas %>% select(package, d_cran = date)) %>%
filter(date >= d_cran) %>%
select(-d_cran) %>%
tidyr::replace_na(list(count = 0)) %>%
filter(date < Sys.Date())
# By month
library(lubridate)
dwn_m <- dwn %>%
mutate(m = lubridate::ceiling_date(dwn$date, "month") - 1) %>%
group_by(package, m) %>%
summarise(downloads = sum(count))
# factors by first date on CRAN
fact <- fechas %>%
arrange(date) %>%
Expand Down Expand Up @@ -178,7 +184,7 @@ lastweek <- dwn %>%
summarise(last_week = sum(count, na.rm = TRUE))
last_day <- dwn %>%
filter(date == max(dwn$date, na.rm = TRUE)) %>%
filter(date == max(dwn$date, na.rm = TRUE) - 1) %>%
select(package, last_day = count)
avg_daily <- dwn %>%
Expand All @@ -188,7 +194,6 @@ avg_daily <- dwn %>%
avg_daily_all <- dwn %>%
summarise(avg = round(mean(count, na.rm = TRUE), 1))
# Une todo y da nombres
end <-
fechas %>%
Expand Down
Binary file modified vignettes/plot-1.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
172 changes: 21 additions & 151 deletions vignettes/rostemplate.Rmd
Original file line number Diff line number Diff line change
@@ -1,151 +1,21 @@
---
title: "Usando rostemplate"
output: rmarkdown::html_vignette
vignette: >
%\VignetteIndexEntry{Usando rostemplate}
%\VignetteEngine{knitr::rmarkdown}
%\VignetteEncoding{UTF-8}
---

Esta librería es una plantilla **pkgdown** adaptada al sitio web de
[rOpenSpain](https://ropenspain.es/).

Esta plantilla es una plantilla privada para uso exclusivo de los paquetes de
**rOpenSpain**. Por favor, no la uses para otros paquetes.

## Introducción

Este paquete proporciona una plantilla de **pkgdown** adaptada a la empleada por
la comunidad [rOpenSpain](https://ropenspain.es/), que a su vez es una
adaptación de la plantilla
[Universal](https://bootstrapious.com/p/universal-business-e-commerce-template)
creada por
[Bootstrapius](https://bootstrapious.com/p/universal-business-e-commerce-template)
con la variación de color **violet**.

## Configuración previa

En la raíz del proyecto ha de existir un archivo `_pkgdown.yml` con al menos las
siguientes líneas:

``` yaml
template:
bootstrap: 5
package: rostemplate
# No pongas la siguiente línea!
default_assets: false
```
Puedes encontrar información sobre cómo configurar otras opciones en
`_pkgdown.yml` [aquí](https://pkgdown.r-lib.org/articles/pkgdown.html).

Adicionalmente, es necesario añadir al archivo `.Rbuildignore` las siguientes
líneas:

``` default
^\.github$
^docs$
^_pkgdown\.yml$
```

## Uso de la plantilla

Esta sección detalla diferentes opciones para generar un sitio estático para el
paquete deseado con el formato definido por esta plantilla. El resultado de este
paso es la generación de un sitio estático compuesto de los archivos `html`,
`css`, etc. basados en el paquete de **R** para el que se está generando el
sitio.

### Con GitHub actions - CI

GitHub Actions permite automatizar procesos cuando se activa un *trigger*. En
este caso se han preparado dos acciones que actualizan el sitio estático cada
vez que se añade un *commit* al repositorio.

Los flujos de trabajo consisten en archivos con extensión `.yaml`. La acción
[rostemplate-docs.yaml](https://github.com/ropenspain/rostemplate/blob/main/inst/yaml/rostemplate-docs.yaml)
crea el sitio estático en la carpeta `./docs` mientras que
[rostemplate-gh-pages.yaml](https://github.com/ropenspain/rostemplate/blob/main/inst/yaml/rostemplate-gh-pages.yaml)
crea el sitio estático en el branch `gh-pages`.

Para configurar esta opción, es necesario disponer en el repositorio de una
carpeta en la ruta `.github/workflows` y copiar la acción deseada en dicha
carpeta.

#### Alternativa usando las funciones de rostemplate

Aunque el uso del paquete **rostemplate** en si no es necesario con GitHub
actions, se han desarrollado dos funciones que automatizan esta configuración de
manera automática. Estas funciones simplemente crean el directorio
`.github/workflows` si no existiera previamente y copian los archivos
solicitados en la ruta correspondiente. Adicionalmente, crean los archivos
`.Rbuildignore` y `.github/.gitignore`, que ignoran ciertos archivos cuando se
compila el paquete:

```{r eval=FALSE}
# Instalación via r-universe
install.packages("rostemplate",
repos = c("https://ropenspain.r-universe.dev", "https://cloud.r-project.org")
)
# Deploy to gh-branch
rostemplate::ros_actions_pkgdown_branch()
# Deploy to docs folder
rostemplate::ros_actions_pkgdown_docs()
```

Es posible cambiar el evento que desencadena la actualización del sitio:

``` yaml
# Actualiza en cada commit - por defecto
on:
push:
branches:
- main
- master
# Actualiza cuando se modifica un archivo específico: _pkgdown.yaml
on:
push:
paths:
- '_pkgdown.yaml'
```

Más información sobre cómo adaptar los *triggers* de la acción
[aquí](https://docs.github.com/es/free-pro-team@latest/actions/reference/events-that-trigger-workflows).

### RStudio - manual

El sitio estático se puede generar igualmente desde una sesión local en
**RStudio**. Para ello, es necesario instalar este paquete:

```{r eval=FALSE}
install.packages("rostemplate",
repos = c("https://ropenspain.r-universe.dev", "https://cloud.r-project.org")
)
```

Una vez instalado, se ha de ejecutar este script:

```{r eval=FALSE}
rostemplate::ros_build()
```

La función `rostemplate::ros_build()` no es más que un alias de
`pkgdown::build_site()`, aportando únicamente un control sobre la configuración
del archivo `_pkgdown.yml`

Una vez generado el sitio, es necesario actualizar el repositorio remoto en
GitHub mediante un *commit*.

## GitHub Pages

Una vez generado el sitio estático y subido al repositorio en GitHub, el último
paso es activar el sitio web a través de los *Settings* de nuestro repositorio
(*Setting\>GitHub Pages*), seleccionando el origen deseado (`gh-pages`,
`main/docs`, etc.).
---
title: "Ejemplo"
output: rmarkdown::html_vignette
vignette: >
%\VignetteIndexEntry{Ejemplo}
%\VignetteEngine{knitr::rmarkdown}
%\VignetteEncoding{UTF-8}
---

```{r, include = FALSE}
knitr::opts_chunk$set(
collapse = TRUE,
comment = "#>"
)
```

```{r setup}
library(rostemplate)
```

Plantilla de ejemplo.

0 comments on commit cf5b65f

Please sign in to comment.