{"id":19986120,"url":"https://github.com/joundso/repub","last_synced_at":"2025-05-04T07:31:06.696Z","repository":{"id":104320229,"uuid":"575109009","full_name":"joundso/repub","owner":"joundso","description":"A template for reproducible publishing using Quarto.","archived":false,"fork":false,"pushed_at":"2024-11-01T07:46:13.000Z","size":968,"stargazers_count":4,"open_issues_count":2,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2024-11-01T08:26:18.066Z","etag":null,"topics":["quarto","quarto-pub","quarto-template","r","reproducible-research"],"latest_commit_sha":null,"homepage":"","language":"Shell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/joundso.png","metadata":{"files":{"readme":"README.md","changelog":"NEWS.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2022-12-06T19:22:26.000Z","updated_at":"2024-11-01T07:46:13.000Z","dependencies_parsed_at":"2024-04-24T18:41:26.699Z","dependency_job_id":"b3c87e7b-58da-4d53-9b13-4272df3d1e84","html_url":"https://github.com/joundso/repub","commit_stats":null,"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/joundso%2Frepub","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/joundso%2Frepub/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/joundso%2Frepub/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/joundso%2Frepub/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/joundso","download_url":"https://codeload.github.com/joundso/repub/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":224389378,"owners_count":17303263,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["quarto","quarto-pub","quarto-template","r","reproducible-research"],"created_at":"2024-11-13T04:27:57.390Z","updated_at":"2024-11-13T04:27:57.976Z","avatar_url":"https://github.com/joundso.png","language":"Shell","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Reproducible Publishing using Quarto\r\n\r\n[![Publication](https://img.shields.io/badge/doi-10.3233/SHTI230064--z-yellow.svg)](https://doi.org/10.3233/SHTI230064)\r\n[![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)\r\n\r\n## Motivation\r\n\r\nLoads 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:\r\nIt should be directly usable without customization, but also provide help to be able to adapt it to your own needs at necessary points.\r\n\r\n### Exemplary workflow\r\n\r\n![Repdoducible Analysis including Docker](./data/img/repub_docker.drawio.png)\r\n\r\nExemplary 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.\r\n\r\n### RStudio with Quarto documents\r\n\r\n![Repdoducible Analysis in RStudio using Quarto](./data/img/demo_manuscript.png)\r\n\r\nRStudio 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.\r\n\r\n![Data process to the final manuscript in Quarto](./data/img/repub_process.png)\r\n\r\nThe 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.\r\n\r\n## Further readings\r\n\r\nInterested in more information? [Find the full paper about this project here](https://ebooks.iospress.nl/doi/10.3233/SHTI230064).\r\n\r\n## Preparations\r\n\r\n1. Make sure, you have [Docker](https://docs.docker.com/get-docker/) installed\r\n2. Make sure, you have [Git](https://git-scm.com/downloads) installed\r\n\r\n## How to use\r\n\r\n1. Clone this repository:\r\n\r\n    ```bash\r\n    git clone https://github.com/joundso/repub.git\r\n    cd repub\r\n    ```\r\n\r\n2. Start the containerized RStudio by running [`start.sh`](./start.sh), or by running:\r\n\r\n    ```bash\r\n    cd docker\r\n    docker-compose up -d\r\n    ```\r\n\r\n3. Open RStudio in your browser at [`http://127.0.0.1:8080/`](http://127.0.0.1:8080/)\r\n   1. Login with the username `rstudio` and password `pwd`\r\n   2. Open the project `repub.Rproj` in the lower right corner of the file browser\r\n4. Build the manuscript in the upper right part of RStudio: `Build` tab --\u003e `Render Book` button\r\n5. See the result in the included viewer or the file in the [`docs`](./docs/) folder\r\n\r\n## Questions?\r\n\r\n- Bugs or Feature Requests: \u003chttps://github.com/joundso/repub/issues\u003e\r\n\r\n## Details\r\n\r\n### Literature\r\n\r\nFor the integration of the sources from the `references.bib` file in the continuous text, permanent citation keys are used.\r\nTo dynamically create a `references.bib` file, the Zotero plugin [`Better BibTeX for Zotero`](https://retorque.re/zotero-better-bibtex/) can be used.\r\n\r\n1. Installation instructions: \u003chttps://retorque.re/zotero-better-bibtex/installation/\u003e\r\n2. 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.\r\n3. 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/).\r\n4. If necessary, adapt the path to the `.bib` file in [`_quarto.yml`](./_quarto.yml):\r\n\r\n    ```yaml\r\n    ## The literature file goes here (use e.g. \r\n    ## 'Better BibTeX for Zotero' to dynamically create this file):\r\n    bibliography: meta/references.bib\r\n    ```\r\n\r\n### Citation styles\r\n\r\nThere are thousnds of citation styles available for free online: \u003chttps://github.com/citation-style-language/styles\u003e\r\nDownload the necessary style, store it locally and add the path to the `.csl` file to the [`_quarto.yml`](./_quarto.yml):\r\n\r\n```yaml\r\n## Citation styltes from here: https://github.com/citation-style-language/styles\r\ncsl: meta/ios-press-books.csl\r\n```\r\n\r\n### Outlook\r\n\r\n- Next to RStudio for R: Add Jupyter with Python backend to Docker deployment\r\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjoundso%2Frepub","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjoundso%2Frepub","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjoundso%2Frepub/lists"}