Skip to main content

AstraPDF

A local-first PDF toolkit with a Python API and browser-based desktop studio. PDF files remain on the machine running the library; the web UI binds to localhost by default.

Install and launch

python -m pip install astrapdf
astrapdf

Open the local address printed by the command. AstraPDF asks the operating system for an available port by default, so it can run even when another app is using a common port. To choose a specific port: astrapdf --port 9000. Do not expose this development server directly to the internet. The default listener is loopback only.

Python API

from pathlib import Path
from pdfstudio import PDFStudio

studio = PDFStudio()
merged = studio.merge(["cover.pdf", "report.pdf", "photo.png"])
Path("combined.pdf").write_bytes(merged)

pages = studio.extract("combined.pdf", [0, 2, 3])
Path("selection.pdf").write_bytes(pages)

Inputs can be paths, bytes, or binary file objects. Document methods return PDF bytes unless documented otherwise; all page indices in the library are zero-based.

See the feature table below for implemented operations and boundaries. Redaction annotations and whiteout overlays are visual covers; they do not remove underlying PDF text. Permanent redaction is intentionally not offered.

License and PDF compatibility

The Python package is MIT licensed. PDFium is distributed in the pypdfium2 wheels under its upstream BSD-style license; see the installed dependency's third-party notices. OCR also requires the Tesseract executable to be installed separately; pip installs AstraPDF's Python dependencies, but cannot install that operating-system program. Supported behavior follows the file format and versions of the bundled libraries. Digital signing, general damaged-PDF repair, XFA forms, and secure redaction are not included.

Metadata

Release files for astrapdf 0.1.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for astrapdf 0.1.0
File Size Uploaded
astrapdf-0.1.0.tar.gz 30.2 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for astrapdf 0.1.0
File Interpreter ABI Platform
astrapdf-0.1.0-py3-none-any.whl Python 3 none any Details

Total release size: 63.9 kB

Release files / astrapdf-0.1.0.tar.gz

Download URL astrapdf-0.1.0.tar.gz
Size 30.2 kB
Tags Source
SHA-256 checksum
How to use checksums
1a40812bd6ad138a7c04f868e5f0f80007d2906256ba5914fc3680b32687547a
BLAKE2b-256 checksum
How to use checksums
5274df50aeb6e9e243861f316b5d7b535baac6ca2fb89d8aa23350f3fe21192a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.14.7

Release files / astrapdf-0.1.0-py3-none-any.whl

Download URL astrapdf-0.1.0-py3-none-any.whl
Size 33.7 kB
Tags Python 3
SHA-256 checksum
How to use checksums
b6463e9750e0dc5446a71fe0702a9005f57c2eb3006fa1639f67698ba3275d33
BLAKE2b-256 checksum
How to use checksums
92b095a893627dea627d1a985ba7325123722d524af39246fd39bd44f1992d4d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.14.7

Release history Release notifications | RSS feed

0.1.1

2 release files

This release

0.1.0 This release

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page