Offline-friendly PDF renamer that generates meaningful, keyword-rich filenames from first-page content.
Project description
meaningful-pdf-names
Offline-friendly CLI to turn your messy paper filenames into compact, keyword-rich names based on the PDF's first page.
Example:
final_v3_really_final.pdf → urban-resilience-transport-inequality-policy-a9f.pdf
Features
- Uses only the first page (title, authors, abstract region) for speed.
- Up to 5 meaningful keywords per file.
- Adds a 3-character [a-z0-9] suffix to avoid collisions.
- Works fully offline with
pypdf. - Optional: use a small local Hugging Face summarizer
(
sshleifer/distilbart-cnn-12-6) viatransformers+torch.
Install
From source / Git:
pip install git+https://github.com/yourname/meaningful-pdf-names.git
(When published to PyPI:)
pip install meaningful-pdf-names
With optional local summarizer:
pip install "meaningful-pdf-names[summarizer]"
Usage
meaningful-pdf-names /path/to/pdfs
meaningful-pdf-names /path/to/pdfs --dry-run
mpn /path/to/pdfs
Why not existing tools?
Other tools often:
- Depend on OpenAI / web APIs.
- Require DOIs or external metadata.
- Use long
Author - Title - Yearpatterns.
meaningful-pdf-names is:
- Local-only (no API keys, no network).
- Fast (first-page only).
- Slug-based: short, grep- and git-friendly names.
License
MIT
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file meaningful_pdf_names-0.1.0.tar.gz.
File metadata
- Download URL: meaningful_pdf_names-0.1.0.tar.gz
- Upload date:
- Size: 5.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
6c1204d82ed86efc1bdacceb11bfff60e84c1424544c8c10d3e6cb044a8c2394
|
|
| MD5 |
8e031f1e67314f9144a2e392372680e1
|
|
| BLAKE2b-256 |
58e51f5d6f9433dd066446dc19364812a2ff34c3bd71a0646f48f207875811b8
|
File details
Details for the file meaningful_pdf_names-0.1.0-py3-none-any.whl.
File metadata
- Download URL: meaningful_pdf_names-0.1.0-py3-none-any.whl
- Upload date:
- Size: 6.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
7fed10b49cb38100281b0c51a88d91fc427188db960776a3a8724845c0887bd7
|
|
| MD5 |
e77419927092ee0bdab7f088099dca94
|
|
| BLAKE2b-256 |
e72a275595afe4d8086e8280da137919561345d9922d9fdc04b2151c9aad2c38
|