utilities to keep your PDF library organized
Project description
papers
Command-line tool to manage your bibliography (PDFs + BibTeX).
Disclaimer: This tool requires further development and testing, and might never
be fully production-ready (contributors welcome).
That said, it is becoming useful :)
A light-weight, command-line bibliography management tool built like git,
with a main command papers and a range of subcommands. It lets you:
- Maintain a PDF library with appropriate, customisable file naming.
- Maintain one or several BibTeX collections, linked to their PDFs.
- Fetch metadata from the internet — enough PDF-parsing capability to pull metadata from crossref (by DOI or fulltext search) or google scholar.
- Search and act on your library with a
find/grep-inspiredpapers list(tag, edit, delete, rename, fetch, deduplicate). - Stay in control — plain BibTeX files, optional git tracking, and undo/redo for every change.
📖 Documentation
Full documentation lives at https://perrette.github.io/papers/:
- Installation (incl. external dependencies)
- Quickstart
- Adding entries
- Listing and searching
- Renaming files and keys
- Configuration and install
- Also: managing your library, git integration, undo/redo, features
Install
pip install papers-cli
Note there is another project registered on PyPI as papers, hence
papers-cli for command-line-interface. See the
installation page for
external dependencies.
Quickstart
# extract metadata from a PDF and add it to your library
papers add esd-4-11-2013.pdf --rename --copy --bibtex papers.bib --filesdir files
# list and search your library
papers list perrette scaling approach sea level
See the quickstart for a full walkthrough.
Consult inline help (papers --help, papers <command> --help) for more
detailed documentation.
From the same author
A few other open-source tools I maintain.
Scientific writing & data
- texmark — write scientific articles in Markdown and convert them to journal-ready LaTeX/PDF.
- datamanifest — declarative, reproducible dataset management. (See also the datamanifest.toml format spec and the DataManifest.jl Julia port.)
Speech to Text (dictate) and Text to Speech (read-aloud) tools
Project details
Release history Release notifications | RSS feed
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 papers_cli-2.17.2.tar.gz.
File metadata
- Download URL: papers_cli-2.17.2.tar.gz
- Upload date:
- Size: 13.9 MB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
35d8b0d6296fa99160761bd879f164866a191927fbefdf78aa9ad62a94c0880e
|
|
| MD5 |
158e8fa30bcccb86609a5c1df63093d4
|
|
| BLAKE2b-256 |
8e3f10de9f3cb977525ef0999c4c8ac78d0e6a6276f89146b666f09e854e0999
|
Provenance
The following attestation bundles were made for papers_cli-2.17.2.tar.gz:
Publisher:
pypi.yml on perrette/papers
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
papers_cli-2.17.2.tar.gz -
Subject digest:
35d8b0d6296fa99160761bd879f164866a191927fbefdf78aa9ad62a94c0880e - Sigstore transparency entry: 1783946837
- Sigstore integration time:
-
Permalink:
perrette/papers@7e17d470e55ac35afb104034f3c734e1be0f0d89 -
Branch / Tag:
refs/tags/v2.17.2 - Owner: https://github.com/perrette
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
pypi.yml@7e17d470e55ac35afb104034f3c734e1be0f0d89 -
Trigger Event:
push
-
Statement type:
File details
Details for the file papers_cli-2.17.2-py3-none-any.whl.
File metadata
- Download URL: papers_cli-2.17.2-py3-none-any.whl
- Upload date:
- Size: 85.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
0c5baaa3f3a035ec472eb8af4163766454936846380a09b8b2cfb7604ecd1d4c
|
|
| MD5 |
a2435fb5371f73afb7d8bffbbb7b5d11
|
|
| BLAKE2b-256 |
163d154acc144a288b486c6d3e386c0fa751f48de80e76bd8d6d0b9ae02100df
|
Provenance
The following attestation bundles were made for papers_cli-2.17.2-py3-none-any.whl:
Publisher:
pypi.yml on perrette/papers
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
papers_cli-2.17.2-py3-none-any.whl -
Subject digest:
0c5baaa3f3a035ec472eb8af4163766454936846380a09b8b2cfb7604ecd1d4c - Sigstore transparency entry: 1783947759
- Sigstore integration time:
-
Permalink:
perrette/papers@7e17d470e55ac35afb104034f3c734e1be0f0d89 -
Branch / Tag:
refs/tags/v2.17.2 - Owner: https://github.com/perrette
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
pypi.yml@7e17d470e55ac35afb104034f3c734e1be0f0d89 -
Trigger Event:
push
-
Statement type: