autorpt
autorpt is an automated word, html, and pdf report generator using Excel and Markdown files
Choose your workflow:
-
Web Interface: User-friendly interface in your browser - perfect for non-technical users
-
Command Line: Fast, scriptable automation for power users
-
User works from a folder with two files in the reports folder of this repo: content.md and budget.xlsx. The two files can be downloaded at the links provided and copied to a folder on your local drive.
-
Copy and adapt the files or add your own files to generate the reports.
-
See basic usage section below for how to set it up. Videos coming soon.
-
Documentation: https://VRConservation.github.io/autorpt.
Features
- Web Interface: Modern, browser-based interface with visual editor
- Familiar Experience: WYSIWYG editor similar to Word/Google Docs
- Drag & Drop: Easy Excel file uploads
- Tabbed Layout: Report, Budget, and Preview tabs in a collapsible side panel
- Report Templates: Pre-built sections for common report types
- Text Snippets: Save and reuse frequently used text
- File History: Track all generated reports
- Multiple Formats: Export to Word, PDF, HTML, or Markdown
- Auto-Discovery: Automatically finds and combines all
.mdand.xlsxfiles in your content folder - Excel Table Integration: Any Excel file becomes a formatted table in your report
- Markdown Content: Write content in markdown format for easy editing and version control
- Mixed Content Support: Combine multiple markdown files and Excel tables in one report
- Customizable Content: Use example files or create your own content structure
- Command Line Interface: Simple commands for different workflows
- Python API: Use programmatically in your own scripts
- Visual Charts: Automatically generates budget comparison charts
- Professional Formatting: Clean, business-ready Word document output
- PDF Conversion: Built-in PDF generation from Word documents
Quick Start
Option 1: Web Interface (Recommended for Most Users)
Launch the web interface in your browser:
auto start
This opens a user-friendly web interface where you can:
- Write and edit report content with a visual editor
- Upload Excel budget files with drag & drop
- Preview your report in real-time
- Generate reports in Word, PDF, HTML, or Markdown format
- Save text snippets for reuse
- View history of generated reports
Perfect for: Non-technical users, collaborative editing, quick report generation
Option 2: Command Line (For Power Users & Automation)
-
Prepare your content in the
reports/folder:- Edit the provided example files:
reports/budget.xlsx(your budget data)reports/content.md(report content with YAML frontmatter)
- Edit the provided example files:
-
Generate a Word document report:
auto
- This creates a Word document (
report_YYYY-MM-DD.docx) in thereports/folder - Content is read from
content.mdwith budget table inserted at the[insert budget from budget.xlsx here]placeholder
- This creates a Word document (
-
Generate a PDF report (requires Typst):
auto --typst- This creates a PDF (
report_YYYY-MM-DD.pdf) in thereports/folder - Uses
report.typTypst template for professional PDF formatting
- This creates a PDF (
-
Generate both Word and PDF:
auto --all
Perfect for: Automation scripts, batch processing, CI/CD pipelines
Installation File Structure
Your project directory should contain:
autorpt/
├── reports/ # Content folder for your report files
│ ├── budget.xlsx # Your budget data
│ ├── content.md # Report content with YAML frontmatter
│ ├── report.typ # Typst template for PDF (auto-generated)
│ ├── report_YYYY-MM-DD.docx # Generated Word documents
│ └── report_YYYY-MM-DD.pdf # Generated PDF documents
├── autorpt/
│ ├── __init__.py
│ └── autorpt.py # Main script
└── setup.py
Content Format
reports/content.md format:
---
title: Monthly Report
date: May 08, 2026
---
# Monthly Report
# Summary
Your summary content here...
# Budget
The current budget is shown below
[insert budget from budget.xlsx here]
## Budget Comments
Additional notes about budget...
# Deliverables Progress
Progress details...
- Item 1
- Item 2
# Challenges
Current challenges...
# Next Period Activities
Planned activities...
The [insert budget from budget.xlsx here] placeholder will be automatically replaced with a formatted budget table in both Word and PDF formats.
Command Line Options
# Web Interface (opens browser automatically)
auto start
# Start web server without opening browser
auto start --no-browser
# Specify custom port for web server
auto start --port 5000
# Generate Word document from content.md and budget.xlsx
auto
# Generate PDF from content.md using Typst
auto --typst
# Generate both Word and PDF
auto --all
# Enable verbose output
auto --verbose
auto start --verbose
The web server auto-clears any stale process on the configured port before starting, so you'll never hit "port in use" errors.
Requirements
- Python 3.9+
- python-docx: For Word document generation
- pandas + openpyxl: For reading Excel budget files
- Typst (optional, for PDF generation): https://github.com/typst/typst
Install Typst for PDF support:
- macOS:
brew install typst - Linux: Follow instructions at https://github.com/typst/typst
- Windows: Download from https://github.com/typst/typst/releases
Output
The package generates:
- Word Document (
report_YYYY-MM-DD.docx): Professional formatted report with budget table - PDF Document (
report_YYYY-MM-DD.pdf): Clean PDF version using Typst template - Both formats include formatted budget tables with proper alignment and styling
- Reports are created in the
reports/folder
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file autorpt-1.1.2.tar.gz.
File metadata
- Download URL: autorpt-1.1.2.tar.gz
- Upload date:
- Size: 27.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via:
twine/6.2.0 CPython/3.14.6
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
4b99bcd041e2689476bb9b7a5252a2e83a4211e79f838242fbf23ad51ee92c8e
|
|
| MD5 |
3fe740c8378df617f1ae88e374a7f620
|
|
| BLAKE2b-256 |
5d9525520f274b93b03e008de9d71f5a7299e49a42248caa318021907ce701f1
|
File details
Details for the file autorpt-1.1.2-py2.py3-none-any.whl.
File metadata
- Download URL: autorpt-1.1.2-py2.py3-none-any.whl
- Upload date:
- Size: 27.0 kB
- Tags: Python 2, Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via:
twine/6.2.0 CPython/3.14.6
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
4600e562f1c24f7069e410a87d352f9d25f3ee24f7e24cb7843936335ec2beaf
|
|
| MD5 |
f6cf0952d72816ed53d2979b29396b90
|
|
| BLAKE2b-256 |
8c383c7754ebbc86507b1451a3779b10c7cc870044ec035800afe1f340b0ef11
|