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
Metadata
Release files for papers-cli 2.17.3
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| papers_cli-2.17.3.tar.gz | 13.9 MB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| papers_cli-2.17.3-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 14.0 MB
Release files / papers_cli-2.17.3.tar.gz
| Download URL | papers_cli-2.17.3.tar.gz |
|---|---|
| Size | 13.9 MB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
f9ab36520f3330f8b84dac1f0d588be70bc103b727ccd11d4d0a9aa902b01329
|
|
BLAKE2b-256 checksum How to use checksums |
ac669f229736527d0694cabd34c28fd3458edced88e9b249b46d1509e9d49abb
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 1, 2026.
Transparency logRelease files / papers_cli-2.17.3-py3-none-any.whl
| Download URL | papers_cli-2.17.3-py3-none-any.whl |
|---|---|
| Size | 86.2 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
73ba13713cdff602f51a8947254f0a072887c6222b6233abf26ebbae740762c8
|
|
BLAKE2b-256 checksum How to use checksums |
ce986927b0c027b2e1474485c880fafd65daf10832e1e2d55d7f450219c4c4b4
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 1, 2026.
Transparency log