MyNixOS website logo
Description

Author Metadata Management and Manuscript Front Matter.

Manage author metadata and generate manuscript front matter. It produces title pages, acknowledgements, conflicts of interest, and contribution sections for large author lists, with helpers for validating and reading common spreadsheet formats.

authordown

R-CMD-check

authordown logo

authordown is an R package for managing author metadata and generating manuscript front matter, especially for large author lists.

中文文档

Online app: Open the app

Features

  • Title page generation with affiliation numbering and correspondence notes
  • Author metadata validation and normalization
  • Acknowledgements, conflict of interest, and contribution sections
  • Templates to standardize author data entry
  • Shiny app for quick preview and export

Installation

From CRAN (once available):

install.packages("authordown")

From GitHub:

# install.packages("devtools")
devtools::install_github("zh1peng/authordown")

End-to-end workflow (offline safe)

1) Start from the bundled template

library(authordown)

# Create a fresh template in a temporary file
template_path <- authordown_template()
authors <- authordown_read_local(template_path)

2) Generate a title page (with degree shown)

title_page <- generate_title_page(
  data = authors,
  title = "Example Paper",
  style = "default",
  show_degree = TRUE
)
cat(title_page)

3) Generate other sections

ack <- generate_acknowledgement(authors, style = "paragraph")
coi <- generate_conflict(authors, style = "paragraph")
contrib <- generate_contribution(authors, style = "bullets")

cat(ack)
cat("\n\n")
cat(coi)
cat("\n\n")
cat(contrib)

4) XLSX input

xlsx_path <- system.file("extdata", "authordown_template.xlsx", package = "authordown")
authors_xlsx <- authordown_read_local(xlsx_path)

Recommended workflow for online tables

If you manage authors in an online table, export it locally and then use authordown_read_local():

  1. Export to CSV or XLSX (or TSV).
  2. Read locally with authordown_read_local().

Supported formats: CSV, TSV, XLSX.

Affiliations

Use Affiliation1, Affiliation2, ... AffiliationN columns to list all affiliations for each author. There is no hard limit; add as many columns as needed. The title page numbers affiliations in the order they first appear.

Shiny app

Online app: Open the app

if (interactive()) {
  shiny::runApp(system.file("shiny-app", package = "authordown"))
}

Workflow: download the template, fill it, upload it, preview the parsed data, then generate outputs for copy/paste.

Render sections for copy/paste

If you want rendered HTML for easy copy/paste into a manuscript system, use:

if (requireNamespace("rmarkdown", quietly = TRUE) && rmarkdown::pandoc_available()) {
  template_path <- authordown_template()
  authors <- authordown_read_local(template_path)

  html_path <- render_section_html(
    section_title = "Conflict of Interest",
    content_function = generate_conflict,
    data = authors,
    style = "paragraph"
  )
  # utils::browseURL(html_path)
}

Troubleshooting

  • "Missing required column" means your file does not include required fields such as FirstName and LastName.
  • "Corresponding authors must have an Email" means a row has Corresponding = TRUE but Email is blank.
  • "ORCID values must use the 0000-0000-0000-0000 format" indicates a formatting error.

License

AGPL-3

Metadata

Version

0.1.0

License

Unknown

Platforms (80)

    Darwin
    FreeBSD
    Genode
    GHCJS
    Linux
    MMIXware
    NetBSD
    none
    OpenBSD
    Redox
    Solaris
    uefi
    WASI
    Windows
Show all
  • aarch64-darwin
  • aarch64-freebsd
  • aarch64-genode
  • aarch64-linux
  • aarch64-netbsd
  • aarch64-none
  • aarch64-uefi
  • aarch64-windows
  • aarch64_be-none
  • arc-linux
  • arm-none
  • armv5tel-linux
  • armv6l-linux
  • armv6l-netbsd
  • armv6l-none
  • armv7a-linux
  • armv7a-netbsd
  • armv7l-linux
  • armv7l-netbsd
  • avr-none
  • i686-cygwin
  • i686-freebsd
  • i686-genode
  • i686-linux
  • i686-netbsd
  • i686-none
  • i686-openbsd
  • i686-windows
  • javascript-ghcjs
  • loongarch64-linux
  • m68k-linux
  • m68k-netbsd
  • m68k-none
  • microblaze-linux
  • microblaze-none
  • microblazeel-linux
  • microblazeel-none
  • mips-linux
  • mips-none
  • mips64-linux
  • mips64-none
  • mips64el-linux
  • mipsel-linux
  • mipsel-netbsd
  • mmix-mmixware
  • msp430-none
  • or1k-none
  • powerpc-linux
  • powerpc-netbsd
  • powerpc-none
  • powerpc64-linux
  • powerpc64le-linux
  • powerpcle-none
  • riscv32-linux
  • riscv32-netbsd
  • riscv32-none
  • riscv64-linux
  • riscv64-netbsd
  • riscv64-none
  • rx-none
  • s390-linux
  • s390-none
  • s390x-linux
  • s390x-none
  • sh4-linux
  • vc4-none
  • wasm32-wasi
  • wasm64-wasi
  • x86_64-cygwin
  • x86_64-darwin
  • x86_64-freebsd
  • x86_64-genode
  • x86_64-linux
  • x86_64-netbsd
  • x86_64-none
  • x86_64-openbsd
  • x86_64-redox
  • x86_64-solaris
  • x86_64-uefi
  • x86_64-windows