[](https://doi.org/10.5281/zenodo.15752358)
[](https://github.com/henriqueslab/rxiv-maker/blob/main/LICENSE)
[](https://ci.appveyor.com/project/henriqueslab/rxiv-maker)
[](https://github.com/HenriquesLab/rxiv-maker/stargazers)
# Rxiv-Maker
<img src="src/logo/logo-rxiv-maker.svg" align="right" width="200" style="margin-left: 20px;"/>
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, Docker containerization for minimal-dependency execution (only Docker and Make required), and integration with GitHub Actions for accelerated 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.
## Key Features
- **20+ Enhanced Markdown Features** - Scientific cross-references, citations, subscript/superscript (**rxiv-markdown**)
- **Automated Figure Generation** - Python/R scripts and Mermaid diagrams with smart caching
- **Intelligent Validation** - Pre-build error detection with actionable feedback
- **Professional Output** - LaTeX-quality PDFs with various citation styles
- **Multi-Environment** - Local, Docker, Google Colab, and GitHub Actions support
- **Change Tracking** - Visual diff PDFs against git tags
- **VS Code Integration** - Dedicated extension with syntax highlighting
- **Modern CLI** - Beautiful command-line interface with rich output and auto-completion
**Key rxiv-markdown features:** Scientific cross-references (`@fig:label`, `@eq:label`), citations (`@citation`), text formatting (`~subscript~`, `^superscript^`), document control (`<newpage>`), and automated figure generation.
## Key Benefits
- **Accessibility** - Write in Markdown without LaTeX expertise
- **Reproducibility** - Automated figures and version control ensure consistent results
- **Flexibility** - Generate PDFs locally, in Docker, or via GitHub Actions
- **Professional Output** - LaTeX-quality formatting with automated bibliography management
- **Collaboration** - Git-based workflows with automated PDF generation
## System Requirements
<details>
<summary><strong>📋 Dependencies & Requirements</strong></summary>
### Core Requirements
- **Python**: 3.11+ (automatically handled in Docker/Colab modes)
- **Git**: For repository management
- **Make**: Build automation (see [platform-specific installation](docs/getting-started/installation.md))
### Python Dependencies
Automatically installed with `pip install rxiv-maker` or `make setup`:
```
matplotlib>=3.7.0 # Figure generation
seaborn>=0.12.0 # Statistical plotting
numpy>=1.24.0 # Numerical computing
pandas>=2.0.0 # Data manipulation
PyYAML>=6.0.0 # Configuration parsing
pypdf>=3.0.0 # PDF processing
crossref-commons # Citation validation
click>=8.0.0 # Modern CLI framework
rich>=13.0.0 # Beautiful terminal output
```
### Optional Dependencies (Local Development Only Without Docker)
- **LaTeX**: For PDF generation (TeX Live, MacTeX, or MikTeX)
- **Node.js**: For Mermaid diagram generation
- **R**: For R-based figure scripts
### Platform-Specific Setup
- **Docker Mode**: Only Docker Desktop + Make required
- **Google Colab**: Zero local installation needed
- **GitHub Actions**: Zero local installation needed
- **Local Development**: Full dependency stack required
### Quick Troubleshooting
- **Permission errors**: Ensure user has write access to project directory
- **LaTeX not found**: Use Docker mode or install platform-specific LaTeX
- **Python version issues**: Use Docker mode or upgrade to Python 3.11+
- **Make command not found**: Install build tools for your platform
**📖 Full Installation Guide**: [Complete platform-specific instructions](docs/getting-started/installation.md)
</details>
## Quickstart
### 🚀 Modern CLI (Recommended)
**📦 Universal Install (Recommended)**
```bash
# One command installs everything
pip install rxiv-maker
# Verify installation
rxiv check-installation
# Initialize new manuscript
rxiv init MY_PAPER/
# Build PDF
rxiv pdf MY_PAPER/
# Enable auto-completion (optional)
rxiv --install-completion bash # or zsh, fish
```
**🎛️ Installation Options**
```bash
# Full installation (default)
pip install rxiv-maker
# Minimal installation (Python + LaTeX only)
RXIV_INSTALL_MODE=minimal pip install rxiv-maker
# Skip system dependencies
RXIV_SKIP_SYSTEM_DEPS=1 pip install rxiv-maker
```
### 📋 Alternative Setup Options
**🌐 Google Colab** (Easiest - no installation)
- **Prerequisites**: Google account only
- **Setup Time**: 2 minutes
- [](https://colab.research.google.com/github/HenriquesLab/rxiv-maker/blob/main/notebooks/rxiv_maker_colab.ipynb)
**🐳 Docker** (Minimal dependencies)
- **Prerequisites**: [Docker Desktop](https://www.docker.com/products/docker-desktop) + Make
- **Setup Time**: 3-5 minutes
```bash
git clone https://github.com/henriqueslab/rxiv-maker.git
cd rxiv-maker
make pdf RXIV_ENGINE=DOCKER
```
**🏠 Local Development** (Full control)
- **Prerequisites**: Python 3.11+, LaTeX, Make ([platform guide](docs/getting-started/installation.md))
- **Setup Time**: 10-30 minutes
```bash
git clone https://github.com/henriqueslab/rxiv-maker.git
cd rxiv-maker
pip install -e . # Install with modern CLI
rxiv build # Generate PDF using CLI
```
**🛠️ Legacy Make Interface** (Still supported)
```bash
git clone https://github.com/henriqueslab/rxiv-maker.git
cd rxiv-maker
make setup && make pdf
```
## Modern CLI Usage
Rxiv-Maker includes a modern command-line interface with rich output and intuitive commands:
### Quick Start
```bash
# Install from PyPI
pip install rxiv-maker
# Initialize new manuscript
rxiv init MY_PAPER/
# Build PDF
rxiv pdf MY_PAPER/
# Validate manuscript
rxiv validate MY_PAPER/
```
### Key CLI Commands
```bash
# Essential commands
rxiv build # Generate PDF from MANUSCRIPT/
rxiv build --force-figures # Force regeneration of figures
rxiv validate # Validate manuscript
rxiv clean # Clean generated files
# Manuscript management
rxiv init MY_PROJECT/ # Initialize new manuscript
rxiv figures # Generate figures only
rxiv arxiv # Prepare arXiv submission
# Bibliography management
rxiv bibliography add 10.1000/doi # Add DOI to bibliography
rxiv bibliography fix # Fix bibliography issues
rxiv bibliography validate # Validate bibliography
# Utility commands
rxiv version # Show version
rxiv version --detailed # Show detailed system info
rxiv --help # Show help
```
### 🔧 CLI Features
- **Rich Output**: Beautiful colors, progress bars, and formatted tables
- **Smart Validation**: Pre-build error detection with helpful suggestions
- **Auto-completion**: Support for bash/zsh/fish shells
- **Flexible Arguments**: Intuitive command structure
- **Error Handling**: Clear error messages with resolution tips
- **Configuration**: Persistent settings with `~/.rxiv/config.toml`
- **Backward Compatibility**: All Make commands still work
### 📚 Complete CLI Reference
#### 📖 Manuscript Management
```bash
rxiv init MY_PAPER/ # Initialize new manuscript
rxiv build MY_PAPER/ # Generate PDF
rxiv validate MY_PAPER/ # Validate manuscript
rxiv clean MY_PAPER/ # Clean generated files
```
#### 🎨 Figure Generation
```bash
rxiv figures MY_PAPER/ # Generate all figures
rxiv figures --force # Force regeneration
rxiv build --force-figures # Build with fresh figures
```
#### 📚 Bibliography Management
```bash
rxiv bibliography add 10.1000/doi # Add DOI to bibliography
rxiv bibliography fix # Fix bibliography issues
rxiv bibliography validate # Validate bibliography
```
#### 📦 Publishing
```bash
rxiv arxiv MY_PAPER/ # Prepare arXiv submission
rxiv track-changes MY_PAPER/ v1.0.0 # Track changes vs git tag
```
#### ⚙️ Configuration
```bash
rxiv config show # Show current configuration
rxiv config set key value # Set configuration value
rxiv config get key # Get configuration value
rxiv config reset # Reset to defaults
```
#### 🔧 System
```bash
rxiv setup # Setup development environment
rxiv version # Show version
rxiv version --detailed # Show detailed system info
rxiv --help # Show help
```
#### 🐳 Docker Support
```bash
rxiv build --engine docker # Use Docker engine
rxiv config set general.default_engine docker # Set Docker as default
```
## Installation
### 🚀 Universal Install (Recommended)
```bash
# One command installs everything automatically
pip install rxiv-maker
# Verify installation
rxiv check-installation
```
**What gets installed:**
- Python packages (matplotlib, numpy, etc.)
- LaTeX distribution (for PDF generation)
- Node.js + Mermaid CLI (for diagrams)
- R language (optional, for statistical figures)
- System libraries (automatically detected)
### 🎛️ Installation Options
```bash
# Full installation (default)
pip install rxiv-maker
# Minimal installation (Python + essential LaTeX only)
RXIV_INSTALL_MODE=minimal pip install rxiv-maker
# Core installation (Python + LaTeX, skip Node.js/R)
RXIV_INSTALL_MODE=core pip install rxiv-maker
# Python packages only (skip all system dependencies)
RXIV_SKIP_SYSTEM_DEPS=1 pip install rxiv-maker
```
### 🍺 Homebrew (macOS) - Deprecated
```bash
# Still supported but deprecated in favor of universal installer
brew tap henriqueslab/rxiv-maker
brew install rxiv-maker
```
### 📋 Development Install
```bash
git clone https://github.com/henriqueslab/rxiv-maker.git
cd rxiv-maker
pip install -e . # Modern hatch-based build system
```
### 🔧 Auto-completion Setup
```bash
# For bash users
rxiv --install-completion bash
# For zsh users
rxiv --install-completion zsh
# For fish users
rxiv --install-completion fish
```
### 🔄 Migration from Make Commands
Existing users can continue using Make commands or migrate to the CLI:
| Make Command | CLI Command | Notes |
|-------------|-------------|-------|
| `make setup` | `rxiv setup` | Setup environment |
| `make pdf` | `rxiv build` | Build PDF |
| `make validate` | `rxiv validate` | Validate manuscript |
| `make clean` | `rxiv clean` | Clean files |
| `make arxiv` | `rxiv arxiv` | Prepare arXiv |
| `make pdf FORCE_FIGURES=true` | `rxiv build --force-figures` | Force figures |
| `MANUSCRIPT_PATH=path/ make pdf` | `rxiv build path/` | Custom path |
📖 **Complete migration guide**: [docs/MIGRATION.md](docs/MIGRATION.md)
📚 **Complete CLI reference**: [docs/CLI_REFERENCE.md](docs/CLI_REFERENCE.md)
📋 **CLI modernization changelog**: [docs/CHANGELOG_CLI.md](docs/CHANGELOG_CLI.md)
**⚡ GitHub Actions** (Team collaboration)
- **Prerequisites**: GitHub account only
- **Setup Time**: 5 minutes
- **Guide**: [Automated cloud builds guide](docs/workflows/github-actions.md)
**📝 VS Code** (Enhanced editing)
- **Prerequisites**: VS Code editor
- **Extension**: [VS Code Extension](https://github.com/HenriquesLab/vscode-rxiv-maker) for syntax highlighting
## Core Workflow
1. **Write** manuscript in Markdown (`01_MAIN.md`)
2. **Configure** metadata in YAML (`00_CONFIG.yml`)
3. **Create** figures with Python/R scripts or Mermaid diagrams
4. **Validate** with `make validate`
5. **Build** PDF with `make pdf`
## Documentation
<details>
<summary><strong>📚 Complete Documentation Index</strong></summary>
### Getting Started
- **[Installation Guide](docs/getting-started/installation.md)** - Complete setup for all platforms
- **[User Guide](docs/getting-started/user_guide.md)** - Complete usage instructions
### Platform Guides
- **[Local Development Setup](docs/platforms/LOCAL_DEVELOPMENT.md)** - Platform-specific installation
- **[Docker Engine Mode](docs/workflows/docker-engine-mode.md)** - Containerized development
- **[Google Colab Tutorial](docs/tutorials/google_colab.md)** - Browser-based PDF generation
- **[GitHub Actions Guide](docs/workflows/github-actions.md)** - Automated cloud builds
### Advanced Features
- **[Change Tracking](docs/workflows/change-tracking.md)** - Version diff PDFs
- **[Troubleshooting](docs/troubleshooting/troubleshooting-missing-figures.md)** - Common issues and fixes
### Development
- **[VS Code Extension](https://github.com/HenriquesLab/vscode-rxiv-maker)** - Enhanced editing experience
- **[API Documentation](docs/api/)** - Code reference
</details>
### Quick Commands
```bash
make pdf # Generate PDF
make validate # Validate manuscript
make pdf MANUSCRIPT_PATH=MY_PAPER # Custom manuscript
make pdf FORCE_FIGURES=true # Force figure regeneration
make pdf-track-changes TAG=v1.0.0 # Track changes vs git tag
make clean # Clean output files
make setup # Install dependencies
```
### Quick Help
- **Issues?** Check [Troubleshooting Guide](docs/troubleshooting/troubleshooting-missing-figures.md)
- **Platform problems?** See [Installation Guide](docs/getting-started/installation.md)
- **Need help?** Visit [GitHub Discussions](https://github.com/henriqueslab/rxiv-maker/discussions)
## Project Structure
```
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
```
## Contributing
We welcome contributions! See [CONTRIBUTING.md](CONTRIBUTING.md) for guidelines.
```bash
git clone https://github.com/henriqueslab/rxiv-maker.git
pip install -e ".[dev]" && pre-commit install
```
### Release Process
For maintainers releasing new versions:
1. **Create GitHub release** with tag `v1.4.0`
2. **PyPI publishing** happens automatically
3. **Homebrew formula** updates manually or daily
4. See [Release Process Guide](docs/RELEASE_PROCESS.md) for details
### 🔧 Troubleshooting Installation
If installation fails or components are missing:
```bash
# Check what's installed
rxiv check-installation --detailed
# Repair broken installation
rxiv check-installation --fix
# Or manually repair
python -m rxiv_maker.install.manager --repair
# Reinstall system dependencies
python -m rxiv_maker.install.manager --mode full
```
**Common Issues:**
- **No admin rights**: Use `RXIV_INSTALL_MODE=minimal`
- **Behind proxy**: System package managers may fail
- **Docker/CI**: Use `RXIV_SKIP_SYSTEM_DEPS=1`
- **Partial install**: Run repair command above
## How to Cite
<a href="https://zenodo.org/records/15753534"><img src="docs/screenshots/preprint.png" align="right" width="300" style="margin-left: 20px; margin-bottom: 20px;" alt="Rxiv-Maker Preprint"/></a>
If you use Rxiv-Maker in your research, please cite our work:
**BibTeX:**
```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
## Related Projects
- **[Rxiv-Maker VS Code Extension](https://github.com/HenriquesLab/vscode-rxiv-maker)** - Enhanced editing experience with syntax highlighting, IntelliSense, and project integration
## Acknowledgments
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.
## License
MIT License - see [LICENSE](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."*
Raw data
{
"_id": null,
"home_page": null,
"name": "rxiv-maker",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.11",
"maintainer_email": null,
"keywords": "automation, cli, command-line, hatch, latex, markdown, publishing, scientific-writing",
"author": null,
"author_email": "Rxiv-Maker Contributors <rxiv.maker@gmail.com>",
"download_url": "https://files.pythonhosted.org/packages/d2/25/f0ad5584a14838c1841f18dc8beb4e51e22036470a3a2442e60acf3cb1fb/rxiv_maker-1.4.8.tar.gz",
"platform": null,
"description": "[](https://doi.org/10.5281/zenodo.15752358)\n[](https://github.com/henriqueslab/rxiv-maker/blob/main/LICENSE)\n[](https://ci.appveyor.com/project/henriqueslab/rxiv-maker)\n[](https://github.com/HenriquesLab/rxiv-maker/stargazers)\n\n# Rxiv-Maker\n\n<img src=\"src/logo/logo-rxiv-maker.svg\" align=\"right\" width=\"200\" style=\"margin-left: 20px;\"/>\n\nRxiv-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.\n\nThe 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, Docker containerization for minimal-dependency execution (only Docker and Make required), and integration with GitHub Actions for accelerated cloud-based PDF generation.\n\nRxiv-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.\n\n## Key Features\n\n- **20+ Enhanced Markdown Features** - Scientific cross-references, citations, subscript/superscript (**rxiv-markdown**)\n- **Automated Figure Generation** - Python/R scripts and Mermaid diagrams with smart caching\n- **Intelligent Validation** - Pre-build error detection with actionable feedback\n- **Professional Output** - LaTeX-quality PDFs with various citation styles\n- **Multi-Environment** - Local, Docker, Google Colab, and GitHub Actions support\n- **Change Tracking** - Visual diff PDFs against git tags\n- **VS Code Integration** - Dedicated extension with syntax highlighting\n- **Modern CLI** - Beautiful command-line interface with rich output and auto-completion\n\n**Key rxiv-markdown features:** Scientific cross-references (`@fig:label`, `@eq:label`), citations (`@citation`), text formatting (`~subscript~`, `^superscript^`), document control (`<newpage>`), and automated figure generation.\n\n## Key Benefits\n\n- **Accessibility** - Write in Markdown without LaTeX expertise\n- **Reproducibility** - Automated figures and version control ensure consistent results\n- **Flexibility** - Generate PDFs locally, in Docker, or via GitHub Actions\n- **Professional Output** - LaTeX-quality formatting with automated bibliography management\n- **Collaboration** - Git-based workflows with automated PDF generation\n\n## System Requirements\n\n<details>\n<summary><strong>\ud83d\udccb Dependencies & Requirements</strong></summary>\n\n### Core Requirements\n- **Python**: 3.11+ (automatically handled in Docker/Colab modes)\n- **Git**: For repository management\n- **Make**: Build automation (see [platform-specific installation](docs/getting-started/installation.md))\n\n### Python Dependencies\nAutomatically installed with `pip install rxiv-maker` or `make setup`:\n```\nmatplotlib>=3.7.0 # Figure generation\nseaborn>=0.12.0 # Statistical plotting \nnumpy>=1.24.0 # Numerical computing\npandas>=2.0.0 # Data manipulation\nPyYAML>=6.0.0 # Configuration parsing\npypdf>=3.0.0 # PDF processing\ncrossref-commons # Citation validation\nclick>=8.0.0 # Modern CLI framework\nrich>=13.0.0 # Beautiful terminal output\n```\n\n### Optional Dependencies (Local Development Only Without Docker)\n- **LaTeX**: For PDF generation (TeX Live, MacTeX, or MikTeX)\n- **Node.js**: For Mermaid diagram generation\n- **R**: For R-based figure scripts\n\n### Platform-Specific Setup\n- **Docker Mode**: Only Docker Desktop + Make required\n- **Google Colab**: Zero local installation needed\n- **GitHub Actions**: Zero local installation needed\n- **Local Development**: Full dependency stack required\n\n### Quick Troubleshooting\n- **Permission errors**: Ensure user has write access to project directory\n- **LaTeX not found**: Use Docker mode or install platform-specific LaTeX\n- **Python version issues**: Use Docker mode or upgrade to Python 3.11+\n- **Make command not found**: Install build tools for your platform\n\n**\ud83d\udcd6 Full Installation Guide**: [Complete platform-specific instructions](docs/getting-started/installation.md)\n\n</details>\n\n## Quickstart\n\n### \ud83d\ude80 Modern CLI (Recommended)\n\n**\ud83d\udce6 Universal Install (Recommended)**\n```bash\n# One command installs everything\npip install rxiv-maker\n\n# Verify installation\nrxiv check-installation\n\n# Initialize new manuscript\nrxiv init MY_PAPER/\n\n# Build PDF\nrxiv pdf MY_PAPER/\n\n# Enable auto-completion (optional)\nrxiv --install-completion bash # or zsh, fish\n```\n\n**\ud83c\udf9b\ufe0f Installation Options**\n```bash\n# Full installation (default)\npip install rxiv-maker\n\n# Minimal installation (Python + LaTeX only)\nRXIV_INSTALL_MODE=minimal pip install rxiv-maker\n\n# Skip system dependencies\nRXIV_SKIP_SYSTEM_DEPS=1 pip install rxiv-maker\n```\n\n### \ud83d\udccb Alternative Setup Options\n\n**\ud83c\udf10 Google Colab** (Easiest - no installation)\n- **Prerequisites**: Google account only\n- **Setup Time**: 2 minutes\n- [](https://colab.research.google.com/github/HenriquesLab/rxiv-maker/blob/main/notebooks/rxiv_maker_colab.ipynb)\n\n**\ud83d\udc33 Docker** (Minimal dependencies)\n- **Prerequisites**: [Docker Desktop](https://www.docker.com/products/docker-desktop) + Make\n- **Setup Time**: 3-5 minutes\n```bash\ngit clone https://github.com/henriqueslab/rxiv-maker.git\ncd rxiv-maker\nmake pdf RXIV_ENGINE=DOCKER\n```\n\n**\ud83c\udfe0 Local Development** (Full control)\n- **Prerequisites**: Python 3.11+, LaTeX, Make ([platform guide](docs/getting-started/installation.md))\n- **Setup Time**: 10-30 minutes\n```bash\ngit clone https://github.com/henriqueslab/rxiv-maker.git\ncd rxiv-maker\npip install -e . # Install with modern CLI\nrxiv build # Generate PDF using CLI\n```\n\n**\ud83d\udee0\ufe0f Legacy Make Interface** (Still supported)\n```bash\ngit clone https://github.com/henriqueslab/rxiv-maker.git\ncd rxiv-maker\nmake setup && make pdf\n```\n\n## Modern CLI Usage\n\nRxiv-Maker includes a modern command-line interface with rich output and intuitive commands:\n\n### Quick Start\n```bash\n# Install from PyPI\npip install rxiv-maker\n\n# Initialize new manuscript\nrxiv init MY_PAPER/\n\n# Build PDF\nrxiv pdf MY_PAPER/\n\n# Validate manuscript\nrxiv validate MY_PAPER/\n```\n\n### Key CLI Commands\n```bash\n# Essential commands\nrxiv build # Generate PDF from MANUSCRIPT/\nrxiv build --force-figures # Force regeneration of figures\nrxiv validate # Validate manuscript\nrxiv clean # Clean generated files\n\n# Manuscript management\nrxiv init MY_PROJECT/ # Initialize new manuscript\nrxiv figures # Generate figures only\nrxiv arxiv # Prepare arXiv submission\n\n# Bibliography management\nrxiv bibliography add 10.1000/doi # Add DOI to bibliography\nrxiv bibliography fix # Fix bibliography issues\nrxiv bibliography validate # Validate bibliography\n\n# Utility commands\nrxiv version # Show version\nrxiv version --detailed # Show detailed system info\nrxiv --help # Show help\n```\n\n### \ud83d\udd27 CLI Features\n- **Rich Output**: Beautiful colors, progress bars, and formatted tables\n- **Smart Validation**: Pre-build error detection with helpful suggestions\n- **Auto-completion**: Support for bash/zsh/fish shells\n- **Flexible Arguments**: Intuitive command structure\n- **Error Handling**: Clear error messages with resolution tips\n- **Configuration**: Persistent settings with `~/.rxiv/config.toml`\n- **Backward Compatibility**: All Make commands still work\n\n### \ud83d\udcda Complete CLI Reference\n\n#### \ud83d\udcd6 Manuscript Management\n```bash\nrxiv init MY_PAPER/ # Initialize new manuscript\nrxiv build MY_PAPER/ # Generate PDF\nrxiv validate MY_PAPER/ # Validate manuscript\nrxiv clean MY_PAPER/ # Clean generated files\n```\n\n#### \ud83c\udfa8 Figure Generation\n```bash\nrxiv figures MY_PAPER/ # Generate all figures\nrxiv figures --force # Force regeneration\nrxiv build --force-figures # Build with fresh figures\n```\n\n#### \ud83d\udcda Bibliography Management\n```bash\nrxiv bibliography add 10.1000/doi # Add DOI to bibliography\nrxiv bibliography fix # Fix bibliography issues\nrxiv bibliography validate # Validate bibliography\n```\n\n#### \ud83d\udce6 Publishing\n```bash\nrxiv arxiv MY_PAPER/ # Prepare arXiv submission\nrxiv track-changes MY_PAPER/ v1.0.0 # Track changes vs git tag\n```\n\n#### \u2699\ufe0f Configuration\n```bash\nrxiv config show # Show current configuration\nrxiv config set key value # Set configuration value\nrxiv config get key # Get configuration value\nrxiv config reset # Reset to defaults\n```\n\n#### \ud83d\udd27 System\n```bash\nrxiv setup # Setup development environment\nrxiv version # Show version\nrxiv version --detailed # Show detailed system info\nrxiv --help # Show help\n```\n\n#### \ud83d\udc33 Docker Support\n```bash\nrxiv build --engine docker # Use Docker engine\nrxiv config set general.default_engine docker # Set Docker as default\n```\n\n## Installation\n\n### \ud83d\ude80 Universal Install (Recommended)\n```bash\n# One command installs everything automatically\npip install rxiv-maker\n\n# Verify installation\nrxiv check-installation\n```\n\n**What gets installed:**\n- Python packages (matplotlib, numpy, etc.)\n- LaTeX distribution (for PDF generation)\n- Node.js + Mermaid CLI (for diagrams)\n- R language (optional, for statistical figures)\n- System libraries (automatically detected)\n\n### \ud83c\udf9b\ufe0f Installation Options\n```bash\n# Full installation (default)\npip install rxiv-maker\n\n# Minimal installation (Python + essential LaTeX only)\nRXIV_INSTALL_MODE=minimal pip install rxiv-maker\n\n# Core installation (Python + LaTeX, skip Node.js/R)\nRXIV_INSTALL_MODE=core pip install rxiv-maker\n\n# Python packages only (skip all system dependencies)\nRXIV_SKIP_SYSTEM_DEPS=1 pip install rxiv-maker\n```\n\n### \ud83c\udf7a Homebrew (macOS) - Deprecated\n```bash\n# Still supported but deprecated in favor of universal installer\nbrew tap henriqueslab/rxiv-maker\nbrew install rxiv-maker\n```\n\n### \ud83d\udccb Development Install\n```bash\ngit clone https://github.com/henriqueslab/rxiv-maker.git\ncd rxiv-maker\npip install -e . # Modern hatch-based build system\n```\n\n### \ud83d\udd27 Auto-completion Setup\n```bash\n# For bash users\nrxiv --install-completion bash\n\n# For zsh users \nrxiv --install-completion zsh\n\n# For fish users\nrxiv --install-completion fish\n```\n\n### \ud83d\udd04 Migration from Make Commands\n\nExisting users can continue using Make commands or migrate to the CLI:\n\n| Make Command | CLI Command | Notes |\n|-------------|-------------|-------|\n| `make setup` | `rxiv setup` | Setup environment |\n| `make pdf` | `rxiv build` | Build PDF |\n| `make validate` | `rxiv validate` | Validate manuscript |\n| `make clean` | `rxiv clean` | Clean files |\n| `make arxiv` | `rxiv arxiv` | Prepare arXiv |\n| `make pdf FORCE_FIGURES=true` | `rxiv build --force-figures` | Force figures |\n| `MANUSCRIPT_PATH=path/ make pdf` | `rxiv build path/` | Custom path |\n\n\ud83d\udcd6 **Complete migration guide**: [docs/MIGRATION.md](docs/MIGRATION.md) \n\ud83d\udcda **Complete CLI reference**: [docs/CLI_REFERENCE.md](docs/CLI_REFERENCE.md) \n\ud83d\udccb **CLI modernization changelog**: [docs/CHANGELOG_CLI.md](docs/CHANGELOG_CLI.md)\n\n**\u26a1 GitHub Actions** (Team collaboration)\n- **Prerequisites**: GitHub account only\n- **Setup Time**: 5 minutes\n- **Guide**: [Automated cloud builds guide](docs/workflows/github-actions.md)\n\n**\ud83d\udcdd VS Code** (Enhanced editing)\n- **Prerequisites**: VS Code editor\n- **Extension**: [VS Code Extension](https://github.com/HenriquesLab/vscode-rxiv-maker) for syntax highlighting\n\n## Core Workflow\n\n1. **Write** manuscript in Markdown (`01_MAIN.md`)\n2. **Configure** metadata in YAML (`00_CONFIG.yml`)\n3. **Create** figures with Python/R scripts or Mermaid diagrams\n4. **Validate** with `make validate`\n5. **Build** PDF with `make pdf`\n\n## Documentation\n\n<details>\n<summary><strong>\ud83d\udcda Complete Documentation Index</strong></summary>\n\n### Getting Started\n- **[Installation Guide](docs/getting-started/installation.md)** - Complete setup for all platforms\n- **[User Guide](docs/getting-started/user_guide.md)** - Complete usage instructions\n\n### Platform Guides \n- **[Local Development Setup](docs/platforms/LOCAL_DEVELOPMENT.md)** - Platform-specific installation\n- **[Docker Engine Mode](docs/workflows/docker-engine-mode.md)** - Containerized development\n- **[Google Colab Tutorial](docs/tutorials/google_colab.md)** - Browser-based PDF generation\n- **[GitHub Actions Guide](docs/workflows/github-actions.md)** - Automated cloud builds\n\n### Advanced Features\n- **[Change Tracking](docs/workflows/change-tracking.md)** - Version diff PDFs\n- **[Troubleshooting](docs/troubleshooting/troubleshooting-missing-figures.md)** - Common issues and fixes\n\n### Development\n- **[VS Code Extension](https://github.com/HenriquesLab/vscode-rxiv-maker)** - Enhanced editing experience\n- **[API Documentation](docs/api/)** - Code reference\n\n</details>\n\n### Quick Commands\n```bash\nmake pdf # Generate PDF\nmake validate # Validate manuscript \nmake pdf MANUSCRIPT_PATH=MY_PAPER # Custom manuscript\nmake pdf FORCE_FIGURES=true # Force figure regeneration\nmake pdf-track-changes TAG=v1.0.0 # Track changes vs git tag\nmake clean # Clean output files\nmake setup # Install dependencies\n```\n\n### Quick Help\n- **Issues?** Check [Troubleshooting Guide](docs/troubleshooting/troubleshooting-missing-figures.md)\n- **Platform problems?** See [Installation Guide](docs/getting-started/installation.md) \n- **Need help?** Visit [GitHub Discussions](https://github.com/henriqueslab/rxiv-maker/discussions)\n\n## Project Structure\n\n```\nrxiv-maker/\n\u251c\u2500\u2500 MANUSCRIPT/ # Your manuscript files\n\u2502 \u251c\u2500\u2500 00_CONFIG.yml # Metadata and configuration\n\u2502 \u251c\u2500\u2500 01_MAIN.md # Main manuscript content\n\u2502 \u251c\u2500\u2500 02_SUPPLEMENTARY_INFO.md # Optional supplementary\n\u2502 \u251c\u2500\u2500 03_REFERENCES.bib # Bibliography\n\u2502 \u2514\u2500\u2500 FIGURES/ # Figure generation scripts\n\u251c\u2500\u2500 output/ # Generated PDFs and artifacts\n\u251c\u2500\u2500 src/ # Rxiv-Maker source code\n\u2514\u2500\u2500 docs/ # Documentation\n```\n\n## Contributing\n\nWe welcome contributions! See [CONTRIBUTING.md](CONTRIBUTING.md) for guidelines.\n\n```bash\ngit clone https://github.com/henriqueslab/rxiv-maker.git\npip install -e \".[dev]\" && pre-commit install\n```\n\n### Release Process\nFor maintainers releasing new versions:\n1. **Create GitHub release** with tag `v1.4.0`\n2. **PyPI publishing** happens automatically\n3. **Homebrew formula** updates manually or daily\n4. See [Release Process Guide](docs/RELEASE_PROCESS.md) for details\n\n### \ud83d\udd27 Troubleshooting Installation\n\nIf installation fails or components are missing:\n\n```bash\n# Check what's installed\nrxiv check-installation --detailed\n\n# Repair broken installation\nrxiv check-installation --fix\n\n# Or manually repair\npython -m rxiv_maker.install.manager --repair\n\n# Reinstall system dependencies\npython -m rxiv_maker.install.manager --mode full\n```\n\n**Common Issues:**\n- **No admin rights**: Use `RXIV_INSTALL_MODE=minimal` \n- **Behind proxy**: System package managers may fail\n- **Docker/CI**: Use `RXIV_SKIP_SYSTEM_DEPS=1`\n- **Partial install**: Run repair command above\n\n## How to Cite\n\n<a href=\"https://zenodo.org/records/15753534\"><img src=\"docs/screenshots/preprint.png\" align=\"right\" width=\"300\" style=\"margin-left: 20px; margin-bottom: 20px;\" alt=\"Rxiv-Maker Preprint\"/></a>\n\nIf you use Rxiv-Maker in your research, please cite our work:\n\n**BibTeX:**\n```bibtex\n@article{saraiva_2025_rxivmaker,\n author = {Saraiva, Bruno M. and Jacquemet, Guillaume and Henriques, Ricardo},\n title = {Rxiv-Maker: an automated template engine for streamlined scientific publications},\n journal = {Zenodo},\n publisher = {Zenodo},\n year = 2025,\n month = jul,\n doi = {10.5281/zenodo.15753534},\n url = {https://zenodo.org/records/15753534},\n eprint = {https://zenodo.org/records/15753534/files/2025__saraiva_et_al__rxiv.pdf}\n}\n```\n\n**APA Style:**\nSaraiva, 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\n\n## Related Projects\n\n- **[Rxiv-Maker VS Code Extension](https://github.com/HenriquesLab/vscode-rxiv-maker)** - Enhanced editing experience with syntax highlighting, IntelliSense, and project integration\n\n## Acknowledgments\n\nWe 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.\n\n## License\n\nMIT License - see [LICENSE](LICENSE) for details. Use it, modify it, share it freely.\n\n---\n\n\n**\u00a9 2025 Jacquemet and Henriques Labs | Rxiv-Maker** \n*\"Because science is hard enough without fighting with LaTeX.\"*\n",
"bugtrack_url": null,
"license": null,
"summary": "Automated LaTeX article generation with modern CLI and figure creation capabilities",
"version": "1.4.8",
"project_urls": null,
"split_keywords": [
"automation",
" cli",
" command-line",
" hatch",
" latex",
" markdown",
" publishing",
" scientific-writing"
],
"urls": [
{
"comment_text": null,
"digests": {
"blake2b_256": "5e5164b3f23a053dcee9a83e5df61afede59f2daa73d5163e7f75f7374f6e4ce",
"md5": "81bf0bdca57d675d09491e501c0b24ad",
"sha256": "1dee1becfe69e95aba5093efdac228a7553a30d550a4f06c4a51b2dff5839935"
},
"downloads": -1,
"filename": "rxiv_maker-1.4.8-py3-none-any.whl",
"has_sig": false,
"md5_digest": "81bf0bdca57d675d09491e501c0b24ad",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.11",
"size": 244499,
"upload_time": "2025-07-23T10:16:40",
"upload_time_iso_8601": "2025-07-23T10:16:40.587207Z",
"url": "https://files.pythonhosted.org/packages/5e/51/64b3f23a053dcee9a83e5df61afede59f2daa73d5163e7f75f7374f6e4ce/rxiv_maker-1.4.8-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "d225f0ad5584a14838c1841f18dc8beb4e51e22036470a3a2442e60acf3cb1fb",
"md5": "02bc2ad39ac9c8c02be905fef989968f",
"sha256": "0b95b9e9cc824a693d8ee936e3d0f62592052d7c66ea60d9e3a04345e9457e3a"
},
"downloads": -1,
"filename": "rxiv_maker-1.4.8.tar.gz",
"has_sig": false,
"md5_digest": "02bc2ad39ac9c8c02be905fef989968f",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.11",
"size": 1050692,
"upload_time": "2025-07-23T10:16:42",
"upload_time_iso_8601": "2025-07-23T10:16:42.877495Z",
"url": "https://files.pythonhosted.org/packages/d2/25/f0ad5584a14838c1841f18dc8beb4e51e22036470a3a2442e60acf3cb1fb/rxiv_maker-1.4.8.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2025-07-23 10:16:42",
"github": false,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"lcname": "rxiv-maker"
}