Powerful and highly extensible command-line based document and bibliography manager
Papis is a powerful and highly extensible CLI document and bibliography manager.
With Papis, you can search your library for books and papers, add documents and notes, import and export to and from other formats, and much much more. Papis uses a human-readable and easily hackable .yaml file to store each entry’s bibliographical data. It strives to be easy to use while providing a wide range of features. And for those who still want more, Papis makes it easy to write scripts that extend its features even further.
Add documents and automatically fetch their metadata.
Search by author, title, tags, and so on.
Synchronize your library with whatever software you’re already using.
Share your documents with colleagues without having to force some proprietary service onto them.
Import your data from other bibliography managers.
Export to BibTeX and other formats.
Integrate with your editor with plugins for (Neo)vim and Emacs.
TUIs make it easy to get a quick overview of your library.
Use the web app when the CLI doesn’t quite cut it (for example on your tablet).
Hacking Papis is easy! Use the API to easily create your own custom python scripts.
Install Papis with pip (or one of the alternatives):
pip install papis
Let’s download a couple of documents:
wget http://www.gnu.org/s/libc/manual/pdf/libc.pdf wget http://www.ams.org/notices/201304/rnoti-p434.pdf
We can now add these to the (default) library. This will automatically query for the metadata associated with the doi.
papis add --from doi 10.1090/noti963 rnoti-p434.pdf
You can also use --set to add information:
papis add libc.pdf --set author "Sandra Loosemore" \ --set title "GNU C reference manual" \ --set year 2018 \ --set tags programming \ --confirm
Now open an attached file or edit an entry:
papis open papis edit
Or export them to bibtex:
papis export --all --format bibtex > mylib.bib
Papis also includes a web app that you can start with:
You can then open the indicated address (http://localhost:8888) in your browser.
All Papis commands come with help messages:
papis -h # General help papis add -h # Help with a specific Papis command
Installation & setup
Information about installation and setup can be found in the docs, for example in the these sections:
The docs cover Papis’ features and discuss possible work flows. If you still have questions, head to our GitHub discussions — we’re more than happy to help. If you’ve found a bug, please open an issue and help make Papis even better!
Reviews and blog posts
Contributions are very welcome! Take a look at CONTRIBUTING.md for general rules and HACKING.md for additional code-related information. We encourage you to also check out, contribute to, or even help maintain the other projects in the Papis ecosystem mentioned below :wink:.
The Papis ecosystem
Papis has grown over the years and there are now a number of projects that extend Papis’ features or integrate it with other software.
Release history Release notifications | RSS feed
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.