Rxiv-Maker is an automated LaTeX article generation system that transforms scientific writing from chaos to clarity. It converts Markdown manuscripts into publication-ready PDFs with reproducible figures, professional typesetting, and zero LaTeX hassle.
The platform bridges the gap between easy writing (Markdown) and beautiful output (LaTeX), featuring automated figure generation from Python/R scripts and Mermaid diagrams, seamless citation management, and integration with GitHub Actions for cloud-based PDF generation.
Rxiv-Maker enhances the capabilities of traditional scientific writing by ensuring version control compatibility, facilitating reproducible science workflows, and providing professional formatting that meets publication standards.
- 20+ Enhanced Markdown Features - Scientific cross-references, citations, subscript/superscript, and programmatic figure generation
- Intelligent Validation System - Pre-build validation catches errors with actionable feedback and suggestions
- Automated Figure Generation - Python scripts, R scripts, and Mermaid diagrams with smart caching
- GitHub Actions Integration - Cloud-based PDF generation with manual triggers
- Professional LaTeX Templates - Various citation styles and academic formatting
- Version Control Friendly - Git-based workflows and reproducible builds
- Multi-Environment Support - Local, Google Colab, and GitHub Actions
π Complete Markdown Feature List
| Markdown Element | LaTeX Equivalent | Description |
|---|---|---|
| Basic Text Formatting | ||
**bold text** |
\textbf{bold text} |
Bold formatting for emphasis |
*italic text* |
\textit{italic text} |
Italic formatting for emphasis |
~subscript~ |
\textsubscript{subscript} |
Subscript formatting (H |
^superscript^ |
\textsuperscript{superscript} |
Superscript formatting (E=mc^2^, x^n^) |
| Document Structure | ||
# Header 1 |
\section{Header 1} |
Top-level section heading |
## Header 2 |
\subsection{Header 2} |
Second-level section heading |
### Header 3 |
\subsubsection{Header 3} |
Third-level section heading |
| Lists | ||
- list item |
\begin{itemize}\item...\end{itemize} |
Unordered list |
1. list item |
\begin{enumerate}\item...\end{enumerate} |
Ordered list |
| Links and URLs | ||
[link text](url) |
\href{url}{link text} |
Hyperlink with custom text |
https://example.com |
\url{https://example.com} |
Bare URL |
| Citations | ||
@citation |
\cite{citation} |
Single citation reference |
[@cite1;@cite2] |
\cite{cite1,cite2} |
Multiple citation references |
| Cross-References | ||
@fig:label |
\ref{fig:label} |
Figure cross-reference |
@sfig:label |
\ref{sfig:label} |
Supplementary figure cross-reference |
@table:label |
\ref{table:label} |
Table cross-reference |
@stable:label |
\ref{stable:label} |
Supplementary table cross-reference |
@eq:label |
\eqref{eq:label} |
Equation cross-reference |
@snote:label |
\ref{snote:label} |
Supplement note cross-reference |
| Tables and Figures | ||
| Markdown table | \begin{table}...\end{table} |
Table with automatic formatting |
| Image with caption | \begin{figure}...\end{figure} |
Figure with separate caption |
| Document Control | ||
<!-- comment --> |
% comment |
Comments (converted to LaTeX style) |
<newpage> |
\newpage |
Manual page break control |
<clearpage> |
\clearpage |
Page break with float clearing |
- Accessibility: Write in familiar Markdown syntax without LaTeX expertise. Interactive workflows lower barriers for researchers.
- Reproducibility: Automated figure generation and version control ensure consistent results across builds.
- Flexibility: Generate PDFs locally, in the cloud, or via GitHub Actions. No vendor lock-in.
- Professional Output: LaTeX-quality formatting with automated bibliography and cross-reference management.
- Collaboration: Git-based workflows enable team editing with automated PDF generation for reviews.
- Extensibility: Modular architecture supports custom templates, styles, and figure generation scripts.
- A comprehensive manuscript generation system combining Markdown simplicity with LaTeX professionalism.
- Fully automated figure generation from Python scripts, R scripts, and Mermaid diagrams integrated into the document build process.
- GitHub Actions workflows provide cloud-based PDF generation with dependency caching and artifact management.
- Professional templates supporting academic publishing conventions, including author affiliations, ORCID integration, and citation styles.
- Version-controlled workflow enabling collaborative writing with automated quality checks and build validation.
π Quick Start (2 minutes)
| User Type | Best Option | Requirements | Setup Time |
|---|---|---|---|
| π New to coding | Google Colab | Google account | 2 minutes |
| β‘ Want automation | GitHub Actions | GitHub account | 5 minutes |
| π§ Full control | Local Install | Python 3.11+, LaTeX, Make | 10-30 minutes |
Perfect for beginners and quick experiments without any local setup.
Build the manuscript and easily edit the author list
β Perfect for:
- First-time users wanting to try Rxiv-Maker
- Quick one-off document generation
- Users without technical setup experience
- Collaborative editing with shared notebooks
Automatic PDF generation on every commit - works with both public and private repos.
- Fork this repository to your GitHub account
- Go to Actions tab β "Build and Release PDF"
- Click "Run workflow" β Select manuscript path β "Run workflow"
- Download PDF from completed workflow run
β Perfect for:
- Regular manuscript writing and revisions
- Team collaboration and version control
- Automatic backup and PDF generation
- Professional workflow without local setup
First time? See platform setup guide for Windows/macOS/Linux installation.
# Clone the repository
git clone https://github.com/henriqueslab/rxiv-maker.git
cd rxiv-maker
# Set up environment
python -m venv .venv
source .venv/bin/activate # On Windows: .venv\Scripts\activate
make setup
# Generate your first PDF
make pdf MANUSCRIPT_PATH=EXAMPLE_MANUSCRIPTβ Perfect for:
- Advanced users and developers
- Custom modifications and extensions
- Offline work environments
- Integration with local development tools
- Write your manuscript in Markdown (
01_MAIN.md) - Configure metadata in YAML (
00_CONFIG.yml). Directly or using our notebook - Create figures with Python scripts, R scripts, Mermaid diagrams or upload images
- Validate your manuscript (
make validate) to catch issues early - Build your PDF locally (
make pdf) or via GitHub Actions - Collaborate using Git workflows with automated PDF generation
- Google Colab Tutorial β Browser-based PDF generation (no installation required)
- GitHub Actions Tutorial β Automated PDF generation and team workflows
- GitHub Actions Guide β Complete cloud PDF generation tutorial
- User Guide β Comprehensive usage instructions and troubleshooting
- Architecture Overview β System design and technical details
- Windows/macOS/Linux Setup β Complete installation guides for all platforms
- API Reference β Python API documentation
| Task | Command | Documentation |
|---|---|---|
| Generate PDF | make pdf |
User Guide |
| Validate Manuscript | make validate |
Validation Guide |
| Cloud PDF Generation | Actions β "Run workflow" | GitHub Actions Guide |
| Custom Manuscript | make pdf MANUSCRIPT_PATH=MY_PAPER |
User Guide |
| Force Figure Regeneration | make pdf FORCE_FIGURES=true |
User Guide |
rxiv-maker/
βββ MANUSCRIPT/ # Your manuscript files
β βββ 00_CONFIG.yml # Metadata and configuration
β βββ 01_MAIN.md # Main manuscript content
β βββ 02_SUPPLEMENTARY_INFO.md # Optional supplementary
β βββ 03_REFERENCES.bib # Bibliography
β βββ FIGURES/ # Figure generation scripts
βββ output/ # Generated PDFs and artifacts
βββ src/ # Rxiv-Maker source code
βββ docs/ # Documentation
For troubleshooting, advanced features, and detailed guides, see the User Guide.
We welcome contributions! Check out our contributing guidelines and help improve Rxiv-Maker.
# Development setup
git clone https://github.com/henriqueslab/rxiv-maker.git
pip install -e ".[dev]"
pre-commit installIf you use Rxiv-Maker in your research, please cite our work:
BibTeX:
@article{saraiva_2025_rxivmaker,
author = {Saraiva, Bruno M. and Jacquemet, Guillaume and Henriques, Ricardo},
title = {Rxiv-Maker: an automated template engine for streamlined scientific publications},
journal = {Zenodo},
publisher = {Zenodo},
year = 2025,
month = jul,
doi = {10.5281/zenodo.15753534},
url = {https://zenodo.org/records/15753534},
eprint = {https://zenodo.org/records/15753534/files/2025__saraiva_et_al__rxiv.pdf}
}APA Style: Saraiva, B. M., Jacquemet, G., & Henriques, R. (2025). Rxiv-Maker: an automated template engine for streamlined scientific publications. Zenodo. https://doi.org/10.5281/zenodo.15753534
We extend our gratitude to the scientific computing community, especially the matplotlib and seaborn communities for their plotting tools, the LaTeX Project for professional typesetting, and Mermaid for accessible diagram generation.
MIT License - see LICENSE for details. Use it, modify it, share it freely.
Β© 2025 Jacquemet and Henriques Labs | Rxiv-Maker
"Because science is hard enough without fighting with LaTeX."
