$npx skillfedfor your agent

borb

borb is a library for reading, creating and manipulating PDF files in python.

With conditionsPyPI Text ProcessingReleased Aug 2026504.7K downloads / moAGPL-3.0-or-laterPure Python

Decision gist · record as of 2026-08-14

pure-Python wheel — borb-3.0.9-py3-none-any.whl
v3.0.9 · released 2026-08-03 · Python >=3.6

Yes, if you need straightforward PDF generation or manipulation in pure Python and can accept the AGPL licensing terms (or purchase a commercial license for proprietary use). The library is actively maintained, has no external dependencies, and covers common PDF workflows. Not suitable if your project is closed-source or commercial without a paid license.AI-flagged interpretation of the facts on this page — verify before relying

Before you install

  • Requires Python 3.6 or later; AGPL license restrictions apply to commercial or closed-source use.
  • Installation is straightforward with no runtime dependencies.
  • The project is actively maintained with a recent release and established community presence (3569 stars).

License · maintenance · safety

AGPL-3.0-or-later (agpl) — borb is dual-licensed under AGPL-3.0-or-later and a commercial license. AGPL requires source disclosure for networked use; commercial licensing is required for closed-source products, paid PDF services, or proprietary distribution.

last release 2026-08-03 (11 days) · last repo commit 2026-08-03 · 3,569 stars

0 known vulnerabilities (OSV.dev, 2026-08-14) · 504,690 downloads/mo, #6,296 on PyPI

Verify before relying

from borb.pdf import Document, Page, PageLayout, SingleColumnLayout, Paragraph, PDF

d = Document()
p = Page()
d.append_page(p)
l = SingleColumnLayout(p)
l.append_layout_element(Paragraph('Hello World!'))
PDF.write(what=d, where_to="output.pdf")
  • Whether the AGPL license applies to your use case (cloud services, closed-source projects, or proprietary distribution require commercial licensing)
  • Performance characteristics and file size limits for large or complex PDF operations
  • Completeness of PDF specification coverage compared to other libraries
Same gist for agents: .md · .json

What it is and what it does

borb is a pure Python library for creating and manipulating PDF documents. It models PDFs using nested lists, dictionaries, and primitives—a JSON-like structure—making it accessible for developers familiar with Python data structures. The library handles reading existing PDFs, writing new ones, and modifying content including text, images, tables, annotations, and page layouts.

The package is maintained as a solo project and prioritizes straightforward, practical PDF workflows. It supports metadata management, text and image extraction, annotation addition, and page layout control through a PageLayout system. With no external runtime dependencies, installation is low-friction, and the library supports Python 3.6 through 3.12.

Use it for

  • Generate PDF reports or invoices programmatically with text, images, and tables
  • Extract text and metadata from existing PDF files for processing or analysis
  • Add annotations, notes, or links to PDF documents
  • Create templated PDF documents with dynamic content insertion
  • Manipulate page layouts and structure in existing PDFs

Worth the install?

AI-flagged interpretation of the facts on this page. Verify before relying on it.

With conditions

Yes, if you need straightforward PDF generation or manipulation in pure Python and can accept the AGPL licensing terms (or purchase a commercial license for proprietary use).

The library is actively maintained, has no external dependencies, and covers common PDF workflows. Not suitable if your project is closed-source or commercial without a paid license.

Install

borb on PyPI

Before you install

Installation is straightforward with no runtime dependencies. The project is actively maintained with a recent release and established community presence (3569 stars).

Requires Python 3.6 or later; AGPL license restrictions apply to commercial or closed-source use.

License in practice

borb is dual-licensed under AGPL-3.0-or-later and a commercial license. AGPL requires source disclosure for networked use; commercial licensing is required for closed-source products, paid PDF services, or proprietary distribution.

Quickstart

from borb.pdf import Document, Page, PageLayout, SingleColumnLayout, Paragraph, PDF

d = Document()
p = Page()
d.append_page(p)
l = SingleColumnLayout(p)
l.append_layout_element(Paragraph('Hello World!'))
PDF.write(what=d, where_to="output.pdf")

Verify before relying

  • Whether the AGPL license applies to your use case (cloud services, closed-source projects, or proprietary distribution require commercial licensing)
  • Performance characteristics and file size limits for large or complex PDF operations
  • Completeness of PDF specification coverage compared to other libraries

Package facts

LicenseAGPL-3.0-or-later agpl
Python supportSupports the current Python release >=3.6
Install frictionLow. Pure-Python wheel
Runtime dependenciesNone
MaintenanceActively maintained 11 days since the last release
Last repo commit
First released
Downloads504,690 / month, #6,296 on PyPI 30-day window, as of 2026-08-14
Known vulnerabilitiesNone known OSV.dev, checked 2026-08-14
Classifiers
Development Status :: 6 - MatureIntended Audience :: DevelopersLicense :: OSI Approved :: GNU Affero General Public License v3 or later (AGPLv3+)Programming Language :: Python :: 3Programming Language :: Python :: 3.10Programming Language :: Python :: 3.11Programming Language :: Python :: 3.12Programming Language :: Python :: 3.6Programming Language :: Python :: 3.7Programming Language :: Python :: 3.8Programming Language :: Python :: 3.9Topic :: Artistic SoftwareTopic :: File FormatsTopic :: MultimediaTopic :: Multimedia :: GraphicsTopic :: Text Processing

Evidence: borb-3.0.9-py3-none-any.whl

Tags

Capabilities
python pdf generationpdf creation librarypdf manipulation pythonread write pdfpdf document processing
Topics
pdf-generationdocument-processing
PyPI keywords
pdfpdf-generationpdf-processingborb

Let your AI agent find packages like this

Example. Real query, live index.

You found this page by searching. An agent finds it by wishing: SkillFed indexes 14,416 PyPI packages by what they can do, searchable in plain language.

wish › “pdf creation library”

  • borbborb reads, writes, and manipulates PDF files using a pure Python…
  • pypdfium2pypdfium2 is a Python binding to PDFium that enables PDF rendering,…
  • pydyfpydyf generates PDF documents from Python code by implementing the…

Give your agent the search over MCP, or paste the wish link into any chat.

More Text Processing packages

regex Worth it
PyPI · Python Modules · released Jul 2026

A drop-in replacement for Python's standard `re` module that adds advanced regex features like nested sets, fuzzy matching, lookaround in conditionals, and full Unicode case-folding while maintaining backward compatibility.

Apache-2.0 AND CNRI-Pythoncompiled wheel · 3.10+
437.7Mdownloads / mo
pyparsing Worth it
PyPI · Text Processing · released Jan 2026

pyparsing provides a library for building text parsers directly in Python code using composable grammar classes, handling quoted strings, whitespace variation, and embedded comments without regex or lex/yacc.

Install it if you need to parse text or define grammars programmatically.

MITpure Python · 3.9+
412.7Mdownloads / mo
fonttools Worth it
PyPI · Text Processing · released May 2026

fonttools manipulates font files in multiple formats (TrueType, OpenType, AFM, Type 1, Mac-specific) and includes TTX, a tool to convert fonts to and from XML text format.

Install it if you need to read, write, or manipulate fonts programmatically or via the TTX command-line tool.

permissive licensepure Python · 3.10+
235.9Mdownloads / mo
docutils With conditions
PyPI · Software Development · released May 2026

Docutils converts plaintext documentation in reStructuredText format into multiple output formats including HTML, XML, and LaTeX using a modular processing system.

BSD-3-Clausepure Python · 3.9+
225.6Mdownloads / mo
RapidFuzz Worth it
PyPI · Text Processing · released Apr 2026

RapidFuzz provides fast fuzzy string matching using Levenshtein Distance and related metrics, implemented mostly in C++ with Python bindings for rapid similarity scoring and approximate string matching.

Install it if you need fuzzy string matching; it's a solid replacement for FuzzyWuzzy with better licensing and performance.

MITcompiled wheel · 3.10+
184.2Mdownloads / mo
tinycss2 Worth it
PyPI · Text Processing · released Nov 2025

tinycss2 parses CSS strings into token and block objects, and generates CSS strings from those objects, following the CSS Syntax Level 3 specification without enforcing specific properties or values.

Install it if your project requires CSS tokenization or syntax manipulation.

BSD-3-Clausepure Python · 3.10+
113.2Mdownloads / mo

See also PyPDF3 · EbookLib · spire-doc · PyPDF4 · python-libsbml · paddleocr · psd-tools · BabelDOC · rpaframework-pdf · PyPDFForm