---
name: "reportlab-flowable-pdf-generator"
description: "Generate programmatic, publication-ready PDF documents using ReportLab Platypus."
metadata:
  author: "ReportLab"
  version: "1.0.0"
  runtime_compatibility:
    - "codex"
    - "claude-code"
    - "cursor"
    - "windsurf"
triggers:
  - "generate pdf invoice reportlab"
  - "create flowable table reportlab"
  - "style reportlab paragraph"
permissions:
  fs_read: true
  fs_write: "workspace"
  shell_exec: false
  net_access: false
---

# ReportLab Flowable PDF Engine

Builds dynamic commercial invoices, account statements, and reports with ReportLab SimpleDocTemplate, Paragraph styles, Table flowables, and Canvas drawing primitives.

## When to Invoke
Invoke this skill whenever you need to:
- generate pdf invoice reportlab
- create flowable table reportlab
- style reportlab paragraph

## Execution SOP & Rules
1. Structure document flow using Platypus SimpleDocTemplate and build(story).
2. Wrap text elements inside Paragraph(text, style) to ensure automatic word wrapping.
3. Construct data tables using Table(data, colWidths) and style with TableStyle command tuples.
4. Implement NumberedCanvas subclass to calculate total page counts dynamically.

## Verification Checklist
- Run local linting, syntax validation, and type-checks before reporting completion.
- Ensure all created or modified files adhere to workspace boundaries and avoid uncommitted secrets.
- Verify tests or build commands exit cleanly with return code 0.
