Convert Figma logo to code with AI

rstudio logorticles

LaTeX Journal Article Templates for R Markdown

1,467
519
1,467
68

Top Related Projects

3,251

Official repository for Citation Style Language (CSL) citation styles.

Themes for Bootstrap

Presentation Ninja 幻灯忍者 · 写轮眼

Authoring Books and Technical Documents with R Markdown

1,215

R Markdown Résumés and CVs

Quick Overview

The rstudio/rticles repository is an R package that provides a suite of custom R Markdown templates for various academic journal article formats. It simplifies the process of creating journal submissions by offering pre-configured templates that adhere to specific journal guidelines, allowing researchers to focus on content rather than formatting.

Pros

  • Streamlines the process of formatting academic papers for specific journals
  • Supports a wide range of journal formats and styles
  • Integrates seamlessly with RStudio and R Markdown workflows
  • Regularly updated to maintain compatibility with journal requirements

Cons

  • May require some familiarity with R Markdown and LaTeX
  • Not all journal formats are supported, limiting its use for some publications
  • Updates to journal requirements may not be immediately reflected in the templates
  • Some users report occasional issues with complex document structures or custom formatting needs

Code Examples

Here are a few examples of how to use rticles:

  1. Creating a new article using a template:
library(rticles)
rmarkdown::draft("my_article.Rmd", template = "plos_article", package = "rticles")

This creates a new R Markdown file using the PLOS journal template.

  1. Rendering an article to PDF:
rmarkdown::render("my_article.Rmd", output_format = "pdf_document")

This compiles the R Markdown file into a PDF document.

  1. Customizing output options:
rmarkdown::render("my_article.Rmd", 
                  output_format = rticles::plos_article(fig_caption = TRUE,
                                                        number_sections = FALSE))

This renders the article with specific options for figure captions and section numbering.

Getting Started

To get started with rticles:

  1. Install the package:
install.packages("rticles")
  1. Create a new article using a template in RStudio:

    • File > New File > R Markdown
    • Choose "From Template"
    • Select a template from the rticles package
  2. Edit the R Markdown file, adding your content and code as needed.

  3. Use the "Knit" button in RStudio or the rmarkdown::render() function to compile your document.

Competitor Comparisons

3,251

Official repository for Citation Style Language (CSL) citation styles.

Pros of styles

  • Extensive collection of citation styles (over 10,000)
  • Widely used and supported by various reference management software
  • Regularly updated with community contributions

Cons of styles

  • Focused solely on citation styles, lacking document templates
  • Requires additional tools or software to implement styles in documents
  • May be overwhelming for users who need only a few specific styles

Code comparison

styles:

<?xml version="1.0" encoding="utf-8"?>
<style xmlns="http://purl.org/net/xbiblio/csl" class="in-text" version="1.0" demote-non-dropping-particle="sort-only" page-range-format="chicago">
  <info>
    <title>American Psychological Association 7th edition</title>
    <title-short>APA</title-short>
    <id>http://www.zotero.org/styles/apa</id>
    <link href="http://www.zotero.org/styles/apa" rel="self"/>

rticles:

---
title: "Title"
author: "Author"
date: "`r Sys.Date()`"
output: rticles::acm_article
---

# Introduction

This is an example document for the ACM article template.

Summary

styles offers a comprehensive collection of citation styles for various reference management tools, while rticles provides R Markdown templates for specific journal formats. styles is more versatile for citation formatting across different platforms, but rticles integrates seamlessly with R Markdown for document creation and formatting.

Themes for Bootstrap

Pros of Bootswatch

  • Offers a wide variety of pre-built themes for Bootstrap, enhancing visual customization
  • Easier to implement for web-based projects and applications
  • Regularly updated to support the latest Bootstrap versions

Cons of Bootswatch

  • Limited to Bootstrap framework, not suitable for other types of documents
  • Lacks specific academic or scientific document templates
  • May require additional customization for specialized use cases

Code Comparison

Bootswatch (CSS):

.navbar {
  background-color: #2C3E50;
}
.btn-primary {
  background-color: #18BC9C;
}

rticles (R Markdown):

---
title: "My Article"
author: "John Doe"
output: rticles::ieee_article
---

Summary

Bootswatch is ideal for web developers seeking quick Bootstrap theme customization, while rticles caters to academics and researchers needing specialized document templates. Bootswatch offers greater visual variety but is limited to web applications, whereas rticles provides structured templates for various academic journals and publications. The choice between them depends on the specific project requirements and target audience.

Presentation Ninja 幻灯忍者 · 写轮眼

Pros of xaringan

  • Focused on creating interactive HTML5 presentations
  • Utilizes Remark.js for smooth, web-based slideshows
  • Offers a wide range of customizable themes and layouts

Cons of xaringan

  • Steeper learning curve for users unfamiliar with CSS and HTML
  • Limited export options compared to rticles (primarily HTML output)
  • May require additional setup for offline presentations

Code Comparison

xaringan:

---
title: "My Presentation"
output:
  xaringan::moon_reader:
    css: [default, metropolis, metropolis-fonts]
    nature:
      highlightStyle: github
      highlightLines: true
      countIncrementalSlides: false
---

rticles:

---
title: "My Article"
author: "John Doe"
output:
  rticles::ieee_article:
    keep_tex: true
    fig_caption: true
bibliography: references.bib
---

xaringan focuses on creating dynamic presentations with a single R Markdown file, while rticles provides templates for various academic journal formats. xaringan offers more flexibility in design but requires more CSS knowledge, whereas rticles is more straightforward for creating publication-ready documents but with less customization options.

Authoring Books and Technical Documents with R Markdown

Pros of bookdown

  • More comprehensive, allowing for creation of entire books or long-form documents
  • Supports multiple output formats (HTML, PDF, ePub) from a single source
  • Offers advanced features like cross-referencing and custom theming

Cons of bookdown

  • Steeper learning curve due to more complex structure and features
  • May be overkill for simple, single-document projects
  • Requires more setup and configuration for optimal use

Code Comparison

bookdown:

---
title: "My Book"
author: "John Doe"
site: bookdown::bookdown_site
output: bookdown::gitbook
---

# Chapter 1

This is the first chapter.

rticles:

---
title: "My Article"
author: "John Doe"
output: rticles::acm_article
---

# Introduction

This is the introduction.

Key Differences

  • bookdown is designed for multi-chapter books, while rticles focuses on single academic articles
  • rticles provides templates for specific journal formats, whereas bookdown offers more general-purpose book layouts
  • bookdown includes features for managing larger projects, such as splitting content across multiple files
1,215

R Markdown Résumés and CVs

Pros of vitae

  • Specialized for creating CVs and resumes
  • Offers multiple CV templates out-of-the-box
  • Integrates with R to dynamically generate CV content

Cons of vitae

  • Limited to CV/resume creation, less versatile than rticles
  • Fewer overall templates compared to rticles
  • May require more custom coding for non-standard CV formats

Code Comparison

vitae example:

library(vitae)

cv_entries <- tribble(
  ~what, ~when, ~with, ~where, ~why,
  "PhD", "2015-2020", "Awesome University", "City, Country", "Thesis: Important Research"
)

cv <- cv_entries %>%
  detailed_entries(what, when, with, where, why)

rticles example:

---
title: "My Article"
author: "John Doe"
output: rticles::ieee_article
---

# Introduction

This is the content of my article.

Both packages use R Markdown, but vitae focuses on structured CV data, while rticles provides article templates for various journals and publications.

Convert Figma logo designs to code with AI

Visual Copilot

Introducing Visual Copilot: A new AI model to turn Figma designs to high quality code using your components.

Try Visual Copilot

README

R-CMD-check Downloads from the RStudio CRAN
mirror CRAN
status Codecov test
coverage

rticles

The rticles package provides a suite of custom R Markdown LaTeX formats and templates for various formats. Most of the templates are provided and maintained by the community, and anyone can contribute a new template. See How to contribute below.

Book

R Markdown: The Definitive Guide

Installation

You can install and use rticles from CRAN as follows:

install.packages("rticles")

If you wish to install the development version from GitHub (which often contains new article formats), you can do this:

# install.packages("pak")
pak::pak("rstudio/rticles")

Using rticles

To use rticles from RStudio, you can access the templates through File -> New File -> R Markdown. This will open the dialog box where you can select from one of the available templates:

New R Markdown

If you are not using RStudio, you’ll also need to install Pandoc following these instructions. Then, use the rmarkdown::draft() function to create articles:

rmarkdown::draft(
    "MyJSSArticle.Rmd", template = "jss", package = "rticles"
)
rmarkdown::draft(
    "MyRJournalArticle", template = "rjournal", package = "rticles"
)

This will create a folder containing a Rmd file using the corresponding output format and all the assets required by this format.

Templates

Currently included templates and their contributors are the following:

JournalContributorsPull requestOutput format
ACM: Association for Computings Machinery@ramnathv#8acm_article()
ACS https://pubs.acs.org@yufree#15acs_article()
AEA: American Economic Association@sboysel#86aea_articles()
AGU https://agupubs.onlinelibrary.wiley.com/@eliocamp#199agu_article()
AJS: Austrian Journal of Statistics@matthias-da#437ajs_article()
AMS: American Meteorological Society@yufree#96ams_article()
ASA: American Statistical Association https://www.amstat.org/#111asa_article()
arXiv pre-prints based on George Kour’s template@alexpghayes#236arxiv_article()
Bioinformatics@ShixiangWang#297bioinformatics_article()
Biometrics@daltonhance#170biometrics_article()
Bulletin de l’AMQ (https://www.amq.math.ca/bulletin/)@desautm#145amq_article()
Copernicus Publications@nuest, @RLumSK#172, #342copernicus_article()
CTeXctex()
Elsevier@cboettig, @robjhyndman#27, #467elsevier_article()
Frontiers@muschellij2#211frontiers_article()
Glossa@stefanocoretta#361glossa_article()
IEEE Transaction@Emaasit, @espinielli, @nathanweeks, @DunLug#97, #169, #227, #263, #264, #265ieee_article()
IMS: Institute of Mathematical Statistics AoAS: Annals of Applied Statistics@auzaheta#372ims_article()
INFORMS: Institute for Operations Research and the Management Sciences@robjhyndman#460informs_article()
ISBA: International Society for Bayesian Analysis@dmi3nko#461isba_article()
IOP: Institute of Physics (https://iopscience.iop.org)@robjhyndman#462iop_article()
JASA: Journal of the Acoustical Society of America@stefanocoretta#364jasa_article()
Journal of Educational Data Mining journal submissions@jooyoungseo#251jedm_article()
JOSS: Journal of Open Source Software JOSE: Journal of Open Source Education@noamross#229joss_article()
JSS: Journal of Statistical Softwarejss_article()
LIPIcs@nuest#288lipics_article()
MDPI@dleutnant, @mps9506#147, #515mdpi_article()
MNRAS: Monthly Notices of the Royal Astronomical Society@oleskiewicz#175mnras_article()
OUP: Oxford University Press@dmkaplan#284oup_articles()
PeerJ: Journal of Life and Environmental Sciences@zkamvar#127peerj_article()
PiHPh: Papers in Historical Phonology@stefanocoretta#362pihph_article()
PLOS@sjmgarnier#12plos_article()
PNAS: Proceedings of the National Academy of Sciences (https://www.pnas.org/)@cboettig#72pnas_article()
RSOS: Royal Society Open Science https://www.royalsocietypublishing.org/journal/rsos@ThierryO#135rsos_article()
RSS: Royal Statistical Society@carlganz#110rss_article()
Sage@oguzhanogreden#181sage_article()
Springer@strakaps#164springer_article()
Springer Lecture Notes in Computer Science (LCNS)@eliocamp#445lncs_article()
SIM: Statistics in Medicine https://onlinelibrary.wiley.com/journal/10970258)@ellessenne#231sim_article()
Taylor & Francis (https://www.tandfonline.com/)@dleutnant#218tf_article()
The R JournalUse rjtools package now. rjournal_article() is deprecated.
TRB@gregmacfarlane#427trb_article()
Wellcome Open Research@arnold-c#436wellcomeor_article()

You can also get the list of available journal names with rticles::journals().

rticles::journals()
#>  [1] "acm"            "acs"            "aea"            "agu"           
#>  [5] "ajs"            "amq"            "ams"            "arxiv"         
#>  [9] "asa"            "bioinformatics" "biometrics"     "copernicus"    
#> [13] "ctex"           "elsevier"       "frontiers"      "glossa"        
#> [17] "ieee"           "ims"            "informs"        "iop"           
#> [21] "isba"           "jasa"           "jedm"           "joss"          
#> [25] "jss"            "lipics"         "lncs"           "mdpi"          
#> [29] "mnras"          "oup_v0"         "oup_v1"         "peerj"         
#> [33] "pihph"          "plos"           "pnas"           "rjournal"      
#> [37] "rsos"           "rss"            "sage"           "sim"           
#> [41] "springer"       "tf"             "trb"            "wellcomeor"

Those are the values to use within rmarkdown::draft().

Under the hood, LaTeX templates are used to ensure that documents conform precisely to submission standards. At the same time, composition and formatting can be done using lightweight markdown syntax, and R code and its output can be seamlessly included using knitr.

Getting help

There are two main places to get help:

  1. The RStudio community is a friendly place to ask any questions about rticles. Be sure to use the rticles tag.

  2. Stack Overflow is a great source of answers to common bookdown questions. Use the tags [r][rticles] if you ask a question.

Code of Conduct

Please note that the rticles project is released with a Contributor Code of Conduct. By contributing to this project, you agree to abide by its terms.

How to contribute?

Most of the templates are contributed directly by the users in the community. If you want rticles to offer a new journal format, you can contribute by the following way.

Suggest an idea for new format opening an issue.

You may not feel confident enough or may not have time to contribute a new format. By opening a new issue, you can share the idea for this format, and see if someone in the community can help on it.
This is not the best way to quickly get your format included but at least it is a great way to see if others are interested too.

To see the existing suggested formats, just filter issues with the help wanted :heart: label. You can then add a :+1: or help to add the template :wink:.

Contribute a new template format opening a pull request.

To contribute a new format, you need to open a new pull request (PR). When opening the PR, you’ll see the PR template explaining how to proceed and what is important to check. Please follow it.
Even if you are just starting or you are not finished, you share your work by creating a draft PR. It is a great way to let us know that you are still working on it (like these opened ones), and it is also a great way to ask for help from the community.
When you are ready, you can submit the PR for review, and we will iterate until it is merged.

Technical resources helpful to contribute a template

The best way to get started is to look at the previous examples of submitted PR. You’ll find links to them in the table above.

All the rticles format are build similarly by providing a new pandoc tex template to replace the default one. You’ll learn more about pandoc templates in these places:

You can study existing formats to see how all this works.