Help us improve
Share bugs, ideas, or general feedback.
From quartopress
Generate a complete journal upload package from Quarto manuscript sources and data files.
npx claudepluginhub shakestzd/quartopress --plugin quartopressHow this skill is triggered — by the user, by Claude, or both
Slash command
/quartopress:build-uploadThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Generate a complete journal upload package from Quarto manuscript sources and data files.
Generates APA 7th edition formatted reports using Quarto (apaquarto) or R Markdown (papaja) with title page, abstract, citations, tables, figures, and reference formatting.
Use this skill for "format manuscript", "prepare for submission", "journal formatting", "LaTeX template", "submission checklist", "format references", "BibTeX", "author guidelines", "page limits", "format for Nature", "format for IEEE", or when the user wants to format a manuscript for journal submission.
Converts a paper draft manuscript plus figures and Zotero metadata into structured .paper/claims.yml and .paper/figures.yml files for use by academic-writing-skills. For the user's own manuscript only, not for summarizing cited papers.
Share bugs, ideas, or general feedback.
Generate a complete journal upload package from Quarto manuscript sources and data files.
Use this skill when:
Source Files Build Steps Output Files
───────────── ─────────── ────────────
_sections/*.qmd ──┐
references.bib ──┼──► Quarto render ──────────────────► Manuscript.docx
citation-style.csl ──┘ (cross-refs + citations resolved)
data/tables/*.csv ──────► build_tables.py ───────────────► Table 1-N.docx
(prs_table_builder)
data/figures/* ──────► figure scripts ─────────────────► Figure 1-N.tiff
legends text ──────► appended to Manuscript.docx ───► (in manuscript)
response letter ──────► python-docx ────────────────────► Response.docx
The master build_upload.py follows this pattern:
def main():
setup_output_dir()
# 1. Render manuscript (Quarto)
build_manuscript() # Assembles sections, replaces cross-refs, renders .docx
# 2. Build tables (prs_table_builder)
build_all_tables() # Each table from CSV/data → .docx with three-line borders
# 3. Copy figures
copy_figures() # TIFF files to output with submission naming
# 4. Response to editor/reviewers
build_response() # Markdown → .docx
Since tables and figures are separate files (not embedded), Quarto cross-references (@tbl-, @fig-) won't resolve. The build script handles this:
_CROSS_REF_MAP = {
"@tbl-characteristics": "Table 1",
"@tbl-specs": "Table 2",
"@fig-workflow": "Figure 1",
"@fig-metrics": "Figure 2",
}
Numbering rule: Tables and figures are numbered in order of first reference in manuscript text.
Appended to the manuscript after References as plain text:
# FIGURE LEGENDS
**Figure 1.** Description of figure 1.
**Figure 2.** Description of figure 2.
# SUPPLEMENTAL DIGITAL CONTENT LEGENDS
**Supplementary Table S1.** Description of SDC item.
After building, verify:
?@tbl-, ?@fig-)# Full rebuild
uv run python scripts/build_upload.py
# Tables only
uv run python scripts/build_tables.py
# Word count check
cat manuscript/_sections/_introduction.qmd _methods.qmd _results.qmd _discussion.qmd | \
sed '/^<!--/d' | sed 's/\[@[^]]*\]//g' | wc -w