Handles the full range of PDF operations you'd expect: merging, splitting, extracting text and tables, OCR on scanned documents, watermarks, encryption, and form filling. Built on pypdf, pdfplumber, and reportlab, with solid examples for each. The table extraction with pdfplumber looks especially clean if you're dumping to Excel. One nice touch is the explicit warning about Unicode subscript characters breaking in reportlab fonts, they document the XML tag workaround instead. Also includes command line options with qpdf and poppler-utils if you prefer that route. Good practical reference when you need to manipulate PDFs without reaching for a heavyweight solution.

GitHub stars
460
last updated
Jun 7, 2026

Install

$ npx -y skills add malob/nix-config --skill pdf --agent claude-code

Installs into .claude/skills of the current project.

Files

PDF Processing Guide

Overview

This guide covers essential PDF processing operations using Python libraries and command-line tools. For advanced features, JavaScript libraries, and detailed examples, see REFERENCE.md. If you need to fill out a PDF form, read FORMS.md and follow its instructions.

Quick Start

from pypdf import PdfReader, PdfWriter

# Read a PDF
reader = PdfReader("document.pdf")
print(f"Pages: {len(reader.pages)}")

# Extract text
text = ""
for page in reader.pages:
    text += page.extract_text()

Python Libraries

pypdf - Basic Operations

Merge PDFs
from pypdf import PdfWriter, PdfReader

writer = PdfWriter()
for pdf_file in ["doc1.pdf", "doc2.pdf", "doc3.pdf"]:
    reader = PdfReader(pdf_file)
    for page in reader.pages:
        writer.add_page(page)

with open("merged.pdf", "wb") as output:
    writer.write(output)
Split PDF
reader = PdfReader("input.pdf")
for i, page in enumerate(reader.pages):
    writer = PdfWriter()
    writer.add_page(page)
    with open(f"page_{i+1}.pdf", "wb") as output:
        writer.write(output)

Sponsors

Details

Repository
github.com/malob/nix-config
Category
Office & Documents
License
MIT
First seen
Jun 11, 2026

More from malob/nix-config

All 14
1Prat011 avatarxlsxPrat011/awesome-llm-skillsComprehensive spreadsheet creation, editing, and analysis with support for formulas, formatting, data analysis, and visualization. When Claude needs to work wit0skills.sh installs
2thinkinaixyz avatarxlsxthinkinaixyz/deepchatComprehensive spreadsheet creation, editing, and analysis with support for formulas, formatting, data analysis, and visualization. When Claude needs to work wit0skills.sh installs
3anthropics avatarpdfanthropics/skillsUse this skill whenever the user wants to do anything with PDF files. This includes reading or extracting text/tables from PDFs, combining or merging multiple P226.1Kskills.sh installs
4googleworkspace avatargws-sheets-readgoogleworkspace/cliGoogle Sheets: Read values from a spreadsheet.52Kskills.sh installs
5googleworkspace avatargws-sheets-appendgoogleworkspace/cliGoogle Sheets: Append a row to a spreadsheet.48Kskills.sh installs
6googleworkspace avatargws-workflow-email-to-taskgoogleworkspace/cliGoogle Workflow: Convert a Gmail message into a Google Tasks entry.33.2Kskills.sh installs