Automated budget report generator for grant management with Excel input and Word output
Project description
autorpt
autorpt is an automated word and pdf report generator using Excel and Markdown files
- 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
- 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
Installation
pip install autorpt
Basic Usage
-
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
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.
Challenges
Current project challenges...
Next Period Activities
Planned activities...
## Command Line Options
```bash
# 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 --typst --verbose
How it works:
auto: Readsreports/content.mdandreports/budget.xlsx, inserts the budget table at the placeholder, and generates a Word documentauto --typst: Convertscontent.mdto Typst format and compiles to PDF using thereport.typtemplateauto --all: Generates both Word and PDF formatsauto --verbose: Shows detailed output during generation
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
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
File details
Details for the file autorpt-1.0.0.tar.gz.
File metadata
- Download URL: autorpt-1.0.0.tar.gz
- Upload date:
- Size: 21.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.14.4
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
15ce3488b2e61a587291bf97a16a5928fad926ff2e642dcd99d3c9209691a3e0
|
|
| MD5 |
1b28438467d4a825b39d8102049c9ee9
|
|
| BLAKE2b-256 |
539a3c0daa2890b7a04c0f29d328fba389c6ce3283f61ad662adafb5ba02b549
|