Document Generation Tool Comparison Matrix

Last Updated: 2026-04-12 Source Research: See .ultra-plans/doc-generation-comparison-research-RESEARCH.md Brand Reference: Navy #020532, Copper C47A3D, Parchment FEF9F1 | Fonts: Playfair Display, Montserrat, Libre Baskerville

Overview

This document provides a scored comparison of 19 document generation tools evaluated for Solanasis consulting deliverables. Tools are scored 1-10 across 8 dimensions. Tier recommendations (Use Now, Add Next, Consider Later, Skip) are based on composite fit for Solanasis’s AI-native, Python-first workflow.

Tier Summary

TierToolsStatus
Tier 1: Use NowGWS CLI + Google Slides/Docs, python-pptx, python-docx/htmldocxAlready built
Tier 2: Add NextTypst + typst-py, Marp CLI, PandocHigh value, low effort
Tier 3: Consider LaterCarbone, WeasyPrint, QuartoConditional value
Tier 4: SkipLaTeX/Beamer/PyLaTeX, Prince XML, DocRaptor, Slidev, reveal.js, Remark.js, FPDF2, ReportLabNot recommended

Scoring Dimensions

  • Visual Quality (1-10): Professional appearance of output for client-facing deliverables
  • Template Editability (1-10): How easily non-developers can create/modify templates
  • Automation Friendliness (1-10): Ease of integration with Python scripts and Claude Code agents
  • Output Formats: List of supported output formats (PDF, DOCX, PPTX, HTML, etc.)
  • Offline (Y/N): Works without internet after initial setup
  • Cost: Free, freemium, or paid (with price if applicable)
  • Setup Complexity (Low/Med/High): Installation and configuration effort on WSL2
  • Solanasis Fit (1-10): Overall fit for Solanasis’s Python-first, AI-native consulting workflow

Part A: Document Generation Tools (Proposals, Reports, PDF/DOCX)

ToolVisual QualityTemplate EditAutomationOutput FormatsOfflineCostSetupSolanasis FitVerdict
GWS CLI + Google Docs/Slides8.59.08.0PDF, Google nativeNoFreeLow9.0TIER 1: Primary for client proposals and reports
python-docx / htmldocx7.06.08.0DOCXYesFreeLow7.0TIER 1: For DOCX output when needed
Typst + typst-py9.04.09.0PDF, PNG, SVGYesFreeLow8.5TIER 2: Best offline branded PDFs
PandocVariable (7.5-9.0)5.08.0PDF, DOCX, HTML, EPUB, 50+YesFreeLow8.0TIER 2: Swiss army knife, multi-format bridge
WeasyPrint7.57.08.0PDFYesFreeMed7.0TIER 3: HTML/CSS to PDF if you have HTML templates
Quarto8.56.07.0PDF, HTML, DOCX, PPTX, EPUBYesFreeMed6.5TIER 3: Data-rich reports with embedded analysis
Carbone8.09.08.0DOCX, PDF, PPTX, XLSX, ODTYesFree (CE)Med6.0TIER 3: Best for non-dev template editing (Node.js)
LaTeX / PyLaTeX9.52.06.0PDFYesFreeHigh3.0TIER 4: Overkill for business docs
Prince XML10.07.07.0PDFYes$3,800Low2.0TIER 4: Cost prohibitive
DocRaptor10.07.08.0PDF, XLSNo$15/mo+Low2.5TIER 4: Cloud-only, limited free tier
FPDF26.03.09.0PDFYesFreeLow3.0TIER 4: Too basic for client-facing docs
ReportLab8.02.07.0PDFYesFreeLow3.5TIER 4: Steep learning curve, superseded by Typst

Part B: Presentation / Slide Tools

ToolVisual QualityTemplate EditAutomationOutput FormatsOfflineCostSetupSolanasis FitVerdict
python-pptx8.03.09.0PPTXYesFreeLow9.0TIER 1: Primary for programmatic pitch decks
GWS CLI + Google Slides8.59.08.0PDF, Google nativeNoFreeLow9.0TIER 1: Primary for template-driven slides
Marp CLI7.57.09.0PDF, PPTX*, HTML, PNGYesFreeLow8.0TIER 2: Rapid Markdown-to-slides (*PPTX is non-editable by default)
Slidev8.05.05.0HTML, PDF, PPTX*YesFreeMed-High3.0TIER 4: Too heavy, Vue dependency
reveal.js8.56.05.0HTML, PDF (via DeckTape)YesFreeMed3.0TIER 4: No PPTX, no CLI, too complex for automation
Beamer (LaTeX)7.02.05.0PDFYesFreeHigh2.0TIER 4: Academic only, overkill
Remark.js6.06.04.0HTMLYesFreeLow2.0TIER 4: Superseded by Marp

Part C: Skills.sh & MCP Ecosystem

Skill/ToolTypeRelevanceSolanasis FitNotes
anthropics/skills/pdf (51K installs)Claude SkillHigh7.0Post-processing: merge, watermark, encrypt. Complements generation tools.
anthropics/skills/pptx (48K installs)Claude SkillHigh6.0Uses PptxGenJS (JS, not Python). QA workflow (thumbnail inspect) worth adopting.
anthropics/skills/docx (47K installs)Claude SkillHigh6.0Uses JS docx library. XML unpack/edit/repack pattern useful.
ailabs-393/pitch-deckClaude SkillHigh7.5Uses python-pptx (matches our stack). JSON data model pattern worth adopting.
anthropics/skills/xlsx (38K installs)Claude SkillMedium5.0Financial proposal spreadsheets. Not core.
Office-PowerPoint-MCP-ServerMCP ServerMedium4.032 PPTX tools via MCP. Adds layer over python-pptx we already use directly.
Office-Word-MCP-ServerMCP ServerMedium4.0DOCX via MCP. Adds layer we may not need.

Per-Use-Case Recommendations

Use CasePrimary ToolSecondary ToolRationale
Client proposals (after discovery calls)GWS CLI + Google DocsTypst + typst-pyGWS CLI: template-driven, branded, scored 9.0/10 in POC. Typst: offline fallback with superior PDF typography.
Pitch decks (investor, partner, client)python-pptxGWS CLI + Google Slidespython-pptx: full programmatic control, brand constants baked in. GWS CLI: when visual template editing is preferred.
Security assessment reportsTypst + typst-pyPandoc + Typst engineTypst: best offline PDF quality for formal compliance docs. Pandoc: when Markdown source is preferred over .typ markup.
Quick internal presentationsMarp CLIpython-pptxMarp: fastest path from Markdown to branded slides (seconds). python-pptx: when PPTX editability is required.
DOCX deliverables (contracts, SOWs)Pandoc + reference docpython-docx / htmldocxPandoc: Markdown to branded DOCX via reference document. python-docx: when programmatic control is needed.
Data-rich reports (dashboards, analytics)Quarto + Typst enginepython-pptx (for slide format)Quarto: Python code chunks generate charts inline. Consider only when data analysis feeds directly into the report.

Pipeline Architecture

Content Layer (AI-Generated)
    |
    v
[Claude Code generates Markdown/JSON with YAML frontmatter]
    |
    +---> GWS CLI Pipeline (Google Slides/Docs)
    |       Template copy -> Replace {{PLACEHOLDERS}} -> PDF export
    |       Best for: Client proposals, formal reports
    |
    +---> Typst Pipeline (typst-py)
    |       Render .typ template with sys_inputs -> PDF
    |       Best for: Security assessments, compliance reports, offline PDFs
    |
    +---> python-pptx Pipeline
    |       Programmatic PPTX generation from JSON data
    |       Best for: Pitch decks, customized presentations
    |
    +---> Marp Pipeline
    |       Markdown + CSS theme -> marp CLI -> PDF/HTML slides
    |       Best for: Quick internal presentations, training decks
    |
    +---> Pandoc Pipeline
            Markdown -> DOCX (reference doc) or PDF (Typst engine)
            Best for: Multi-format output from single Markdown source

Brand Implementation by Tool

ToolColorsFontsLogoEffort to Brand
GWS CLI (Slides/Docs)Set in Google templateSet in Google templateEmbedded in templateManual once per template
python-pptxPython constants (already defined)Loaded from font filesImage insertAlready done
Typst#rgb("#020532") in .typ templateset text(font: "Playfair Display")image("logo.png")1-2 hrs for first template
MarpCSS custom properties --color-primary: #020532@import url(...) or local @font-faceCSS background-image1-2 hrs for first theme
Pandoc + DOCXReference document styling in WordReference document fontsReference document header30 min
WeasyPrintCSS variables@font-face declarationsHTML <img>1 hr

See also: typst-setup-and-brand-template-guide, marp-cli-setup-and-brand-theme-guide, pandoc-setup-and-brand-pipeline-guide, document-generation-skills-roadmap