Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/joundso/repub
A template for reproducible publishing using Quarto.
https://github.com/joundso/repub
quarto quarto-pub quarto-template r reproducible-research
Last synced: about 1 month ago
JSON representation
A template for reproducible publishing using Quarto.
- Host: GitHub
- URL: https://github.com/joundso/repub
- Owner: joundso
- License: gpl-3.0
- Created: 2022-12-06T19:22:26.000Z (about 2 years ago)
- Default Branch: master
- Last Pushed: 2024-11-01T07:46:13.000Z (about 2 months ago)
- Last Synced: 2024-11-01T08:26:18.066Z (about 2 months ago)
- Topics: quarto, quarto-pub, quarto-template, r, reproducible-research
- Language: Shell
- Homepage:
- Size: 945 KB
- Stars: 4
- Watchers: 1
- Forks: 0
- Open Issues: 2
-
Metadata Files:
- Readme: README.md
- Changelog: NEWS.md
- License: LICENSE
Awesome Lists containing this project
README
# Reproducible Publishing using Quarto
[![Publication](https://img.shields.io/badge/doi-10.3233/SHTI230064--z-yellow.svg)](https://doi.org/10.3233/SHTI230064)
[![Docker image workflow](https://github.com/joundso/repub/actions/workflows/ci_build_push_image.yaml/badge.svg)](https://hub.docker.com/repository/docker/joundso/rstudio-verse/general)## Motivation
Loads of tutorials and literature about reproducible research is available but it turned out that there was no repository (that I know of) that reproducibly maps everything from the beginning (data analysis) to the end (publication). This repo is supposed to offer exactly that:
It should be directly usable without customization, but also provide help to be able to adapt it to your own needs at necessary points.### Exemplary workflow
![Repdoducible Analysis including Docker](./data/img/repub_docker.drawio.png)
Exemplary workflow to ensure reproducibility in data analysis and manuscript writing. The code for pre-processing, the analysis and the presentation of the results in the manuscript (`code`) are version-controlled. The build information of the container for the runtime and development environment (`Dockerfile + docker-compose`) is also version-controlled. The container image is version-controlled as well and stored in a dedicated online repository. The raw data itself is not version controlled via Git.
### RStudio with Quarto documents
![Repdoducible Analysis in RStudio using Quarto](./data/img/demo_manuscript.png)
RStudio as integrated development environment for writing and compiling quarto documents with code (e.g. R or Python) and text (using Markdown or the visual editor). On the left: RStudio interface for composing the text and code next to each other. On the right: Rendered output document with dynamically incorporated results.
![Data process to the final manuscript in Quarto](./data/img/repub_process.png)
The text and code are evaluated on the basis of the data provided, resulting in a dynamically generated manuscript in the form of a Word, PDF or HTML document.
## Further readings
Interested in more information? [Find the full paper about this project here](https://ebooks.iospress.nl/doi/10.3233/SHTI230064).
## Preparations
1. Make sure, you have [Docker](https://docs.docker.com/get-docker/) installed
2. Make sure, you have [Git](https://git-scm.com/downloads) installed## How to use
1. Clone this repository:
```bash
git clone https://github.com/joundso/repub.git
cd repub
```2. Start the containerized RStudio by running [`start.sh`](./start.sh), or by running:
```bash
cd docker
docker-compose up -d
```3. Open RStudio in your browser at [`http://127.0.0.1:8080/`](http://127.0.0.1:8080/)
1. Login with the username `rstudio` and password `pwd`
2. Open the project `repub.Rproj` in the lower right corner of the file browser
4. Build the manuscript in the upper right part of RStudio: `Build` tab --> `Render Book` button
5. See the result in the included viewer or the file in the [`docs`](./docs/) folder## Questions?
- Bugs or Feature Requests:
## Details
### Literature
For the integration of the sources from the `references.bib` file in the continuous text, permanent citation keys are used.
To dynamically create a `references.bib` file, the Zotero plugin [`Better BibTeX for Zotero`](https://retorque.re/zotero-better-bibtex/) can be used.1. Installation instructions:
2. Afterwards, the '[automatic export](https://retorque.re/zotero-better-bibtex/installation/preferences/automatic-export/)' function can be used to automatically create and update a `*.bib` file depending on the content in your Zotero instance.
3. One example for the creation of citation keys might be this: `auth.lower.replace(find=".",replace=_)+len+year | veryshorttitle+shortyear`. Information about the citation keys are available [here](https://retorque.re/zotero-better-bibtex/citing/).
4. If necessary, adapt the path to the `.bib` file in [`_quarto.yml`](./_quarto.yml):```yaml
## The literature file goes here (use e.g.
## 'Better BibTeX for Zotero' to dynamically create this file):
bibliography: meta/references.bib
```### Citation styles
There are thousnds of citation styles available for free online:
Download the necessary style, store it locally and add the path to the `.csl` file to the [`_quarto.yml`](./_quarto.yml):```yaml
## Citation styltes from here: https://github.com/citation-style-language/styles
csl: meta/ios-press-books.csl
```### Outlook
- Next to RStudio for R: Add Jupyter with Python backend to Docker deployment