skillfed

PyPDFForm

The Python library & CLI for PDF forms.

pypdfform v5.5.5 201.1K downloads/30d#9,679 on PyPI1,236
Permissive license MIT Active released

What it is and what it does

PyPDFForm is a Python library and CLI tool for working with PDF forms end-to-end. It lets you create new forms and form fields from scratch, inspect existing form structure and metadata, update field styling and behavior, fill forms programmatically, and perform common PDF operations like page extraction and merging. The library wraps lower-level PDF manipulation via pikepdf and reportlab, exposing a straightforward API for both Python code and command-line workflows.

Typical use cases range from one-off form filling to building larger document automation pipelines. You can load a template PDF, populate its fields with data, and write the result—or use the CLI for quick command-line form operations. The package is actively maintained, supports modern Python versions, and carries no known security vulnerabilities.

Use it for:

  • Batch-fill hundreds of PDF forms with data from a database or spreadsheet in a single script.
  • Inspect form field names and types programmatically before deciding how to populate them.
  • Create new PDF forms with custom fields, styling, and behavior from Python code.
  • Automate document workflows that require extracting pages from multiple PDFs and merging them.
  • Build a CLI tool for non-developers to fill forms without writing code.

Worth the install?

AI-flagged interpretation of the facts on this page — verify before relying

PyPDFForm creates, inspects, styles, and fills PDF forms via Python API or command line, with utilities for page extraction and PDF merging.

Yes. PyPDFForm is actively maintained, carries no known vulnerabilities, has low install friction, and is licensed permissively under MIT. It solves a real problem—PDF form automation—with a clean API and CLI interface. The 6 dependencies are all well-established libraries. Install it if you need to create, inspect, or fill PDF forms programmatically.

Install

pypdfform on PyPI

pip

pip install pypdfform

uv

uv add pypdfform

poetry

poetry add pypdfform

Installing PyPDFForm

Before you install

Low install friction with a pure-Python wheel distribution. Actively maintained with a release 6 days ago and 1236 repository stars. Requires modern Python (3.10+) but supports current versions through 3.14.

License in practice

MIT license permits commercial and private use with minimal restrictions—you may use, modify, and distribute PyPDFForm freely provided you include the license notice.

Quickstart

pip install PyPDFForm

from PyPDFForm import PdfWrapper

filled = PdfWrapper("form.pdf", need_appearances=True).fill({
    "field_name": "value",
    "checkbox": True,
})
filled.write("output.pdf")

Requires Python 3.10 or later. Underlying dependencies (pikepdf, reportlab, pillow) may require system libraries for image and font handling on some platforms.

Verify before relying

  • Whether the package handles complex nested form structures or only flat field layouts.
  • Performance characteristics when processing large batches of forms or very large PDF files.
  • Extent of CLI feature parity with the Python API for form creation and styling.

Package facts

License MIT (permissive)
Python support supports the current Python release (>=3.10)
Install friction low — pure-Python wheel
Runtime dependencies 6 — cryptography, fonttools, pikepdf, pillow, pypdf, reportlab
Maintenance actively maintained — 6 days since the last release
Last repo commit
First released
Downloads 201,071/month — #9,679 on PyPI (30-day window, as of 2026-08-14)
Known vulnerabilities none known (OSV.dev, checked 2026-08-14)

Evidence: pypdfform-5.5.5-py3-none-any.whl

Development Status :: 5 - Production/StableEnvironment :: ConsoleIntended Audience :: DevelopersOperating System :: OS IndependentProgramming Language :: Python :: 3Programming Language :: Python :: 3 :: OnlyProgramming Language :: Python :: 3.10Programming Language :: Python :: 3.11Programming Language :: Python :: 3.12Programming Language :: Python :: 3.13Programming Language :: Python :: 3.14Topic :: File FormatsTopic :: Software Development :: Libraries :: Python ModulesTopic :: Text ProcessingTopic :: Utilities

Tags

pdf form filling automationcreate pdf forms pythoninspect pdf form fieldspdf form stylingbatch fill pdf formspdf merge extract pagescommand line pdf tool
pdf-automationform-fillingcli-tool

More Python Modules packages