Papis
=====
|ghbadge| |RTD| |CodeQL| |Pypi| |zenodo_badge|
Papis is a powerful and highly extensible CLI document and bibliography manager.
|first_glance|
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.
Features
--------
- **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.
Quick tour
----------
Install Papis with pip (or `one of the alternatives <https://papis.readthedocs.io/en/latest/install.html>`__):
.. code:: bash
pip install papis
Let's download a couple of documents:
.. code:: bash
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``.
.. code:: bash
papis add --from doi 10.1090/noti963 rnoti-p434.pdf
|add|
You can also use ``--set`` to add information:
.. code:: bash
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:
.. code:: bash
papis open
papis edit
|edit|
Or export them to bibtex:
.. code:: bash
papis export --all --format bibtex > mylib.bib
|bibtex_export|
Papis also includes a web app that you can start with:
.. code:: bash
papis serve
You can then open the indicated address (``http://localhost:8888``) in your browser.
|web_app|
All Papis commands come with help messages:
.. code:: bash
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 <https://papis.readthedocs.io/en/latest/>`__, for example in the these sections:
- `Installation <https://papis.readthedocs.io/en/latest/install.html>`__
- `Configuration <https://papis.readthedocs.io/en/latest/configuration.html>`__
- `Import <https://papis.readthedocs.io/en/latest/importing.html>`__
- `Editor integration <https://papis.readthedocs.io/en/latest/editors.html>`__
Questions?
----------
The `docs <https://papis.readthedocs.io/en/latest/>`__ cover Papis' features and discuss possible work flows. If you still have questions, head to our `GitHub discussions <https://github.com/papis/papis/discussions>`__ — we're more than happy to help. If you've found a bug, please `open an issue <https://github.com/papis/papis/issues>`__ and help make Papis even better!
Reviews and blog posts
----------------------
- `Blog post <https://alejandrogallo.github.io/blog/posts/getting-paper-references-with-papis/>`__ about getting a paper's references with ``papis explore``.
- `Blog post <http://nicolasshu.com/zotero_and_papis.html>`__ about using Papis with Zotero and Syncthing.
- GNU/Linux Switzerland `wrote about Papis <https://gnulinux.ch/papis-dokumentenverwaltung-fuer-die-kommandozeile>`__ *(in German)*.
- The folks at OSTechNix wrote a review of `Papis
<https://www.ostechnix.com/papis-command-line-based-document-bibliography-manager/>`__.
- A `review of Papis <https://ubunlog.com/papis-administrador-documentos/>`__ by Ubunlog *(in Spanish)*.
Contributing
------------
Contributions are very welcome! Take a look at `CONTRIBUTING.md <https://github.com/papis/papis/blob/master/CONTRIBUTING.md>`__ for general rules and `HACKING.md <https://github.com/papis/papis/blob/master/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.
.. list-table::
:widths: 33 67
:header-rows: 1
* - Project
- Maintained by
* - `papis (core) <https://github.com/papis/papis-rofi/>`__
- `Alejandro Gallo <https://alejandrogallo.github.io/>`__, `Julian Hauser <https://github.com/jghauser>`__, `Alex Fikl <https://github.com/alexfikl>`__
* - `papis-rofi <https://github.com/papis/papis-rofi/>`__
- `Etn40ff <https://github.com/Etn40ff>`__
* - `papis-dmenu <https://github.com/papis/papis-dmenu>`__
- you?
* - `papis-vim <https://github.com/papis/papis-vim>`__
- you?
* - `papis.nvim <https://github.com/jghauser/papis.nvim>`__
- `Julian Hauser <https://github.com/jghauser>`__
* - `papis-emacs <https://github.com/papis/papis.el>`__
- `Alejandro Gallo <https://alejandrogallo.github.io/>`__
* - `papis-zotero <https://github.com/papis/papis-zotero>`__
- `lennonhill <https://github.com/lennonhill>`__
* - `papis-libgen <https://github.com/papis/papis-zotero>`__
- you?
* - `papis-firefox <https://github.com/papis/papis-firefox>`__
- `wavefrontshaping <https://github.com/wavefrontshaping>`__
Related software
----------------
Papis isn't the only fish in the pond. You might also be interested in:
- `bibman <https://codeberg.org/KMIJPH/bibman>`__ (opensource)
- `cobib <https://github.com/mrossinek/cobib>`__ (opensource)
- `jabref <https://www.jabref.org/>`__ (opensource)
- `Mendeley <https://www.mendeley.com/>`__ (proprietary)
- `pubs <https://github.com/pubs/pubs/>`__ (opensource)
- `Xapers <https://finestructure.net/xapers/>`__ (opensource)
- `Zotero <https://www.zotero.org/>`__ (opensource)
.. |ghbadge| image:: https://github.com/papis/papis/workflows/CI/badge.svg
:target: https://github.com/papis/papis/actions?query=branch%3Amaster+workflow%3ACI
.. |RTD| image:: https://readthedocs.org/projects/papis/badge/?version=latest
:target: http://papis.readthedocs.io/en/latest/?badge=latest
.. |CodeQL| image:: https://github.com/papis/papis/workflows/CodeQL/badge.svg
:target: https://github.com/papis/papis/actions?query=branch%3Amaster+workflow%3ACodeQL
.. |Pypi| image:: https://badge.fury.io/py/papis.svg
:target: https://pypi.org/project/papis/
.. |zenodo_badge| image:: https://zenodo.org/badge/82691622.svg
:target: https://zenodo.org/badge/latestdoi/82691622
.. |first_glance| image:: https://papis.github.io/images/first_glance.gif
.. |edit| image:: https://papis.github.io/images/edit.gif
.. |bibtex_export| image:: https://papis.github.io/images/bibtex_export.gif
.. |add| image:: https://papis.github.io/images/add.gif
.. |web_app| image:: https://papis.github.io/images/web_app.jpg
Raw data
{
"_id": null,
"home_page": "https://github.com/papis/papis",
"name": "papis",
"maintainer": "Alejandro Gallo",
"docs_url": null,
"requires_python": ">=3.5",
"maintainer_email": "aamsgallo@gmail.com",
"keywords": "biblatex,bibtex,biliography,books,cli,command-line,crossref,datasheets,document,elsevier,ieee,latex,libgen,mathematics,mendeley,papers,physics,pubmed,reference manager,research,science,scihub,tui,zotero",
"author": "Alejandro Gallo",
"author_email": "aamsgallo@gmail.com",
"download_url": "https://files.pythonhosted.org/packages/4f/8d/91fe0b2ed6a122ed2207fbc6686139af0e9c786480eca6256a3ddf76ff40/papis-0.13.tar.gz",
"platform": "linux",
"description": "Papis\n=====\n\n|ghbadge| |RTD| |CodeQL| |Pypi| |zenodo_badge|\n\nPapis is a powerful and highly extensible CLI document and bibliography manager.\n\n|first_glance|\n\nWith 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.\n\nFeatures\n--------\n\n- **Add documents** and automatically fetch their metadata.\n- **Search** by author, title, tags, and so on.\n- **Synchronize** your library with whatever software you're already using.\n- **Share** your documents with colleagues without having to force some proprietary service onto them.\n- **Import** your data from other bibliography managers.\n- **Export** to BibTeX and other formats.\n- **Integrate with your editor** with plugins for (Neo)vim and Emacs.\n- **TUIs** make it easy to get a quick overview of your library.\n- **Use the web app** when the CLI doesn't quite cut it (for example on your tablet).\n- **Hacking** Papis is easy! Use the API to easily create your own custom python scripts.\n\nQuick tour\n----------\n\nInstall Papis with pip (or `one of the alternatives <https://papis.readthedocs.io/en/latest/install.html>`__):\n\n.. code:: bash\n\n pip install papis\n\nLet's download a couple of documents:\n\n.. code:: bash\n\n wget http://www.gnu.org/s/libc/manual/pdf/libc.pdf\n wget http://www.ams.org/notices/201304/rnoti-p434.pdf\n\nWe can now add these to the (default) library. This will automatically query for the metadata associated with the ``doi``.\n\n.. code:: bash\n\n papis add --from doi 10.1090/noti963 rnoti-p434.pdf\n\n|add|\n\nYou can also use ``--set`` to add information:\n\n.. code:: bash\n\n papis add libc.pdf --set author \"Sandra Loosemore\" \\\n --set title \"GNU C reference manual\" \\\n --set year 2018 \\\n --set tags programming \\\n --confirm\n\nNow open an attached file or edit an entry:\n\n.. code:: bash\n\n papis open\n papis edit\n\n\n|edit|\n\nOr export them to bibtex:\n\n.. code:: bash\n\n papis export --all --format bibtex > mylib.bib\n\n|bibtex_export|\n\nPapis also includes a web app that you can start with:\n\n.. code:: bash\n\n papis serve\n\nYou can then open the indicated address (``http://localhost:8888``) in your browser.\n\n|web_app|\n\nAll Papis commands come with help messages:\n\n.. code:: bash\n\n papis -h # General help\n papis add -h # Help with a specific Papis command\n\nInstallation & setup\n--------------------\n\nInformation about installation and setup can be found in the `docs <https://papis.readthedocs.io/en/latest/>`__, for example in the these sections:\n\n- `Installation <https://papis.readthedocs.io/en/latest/install.html>`__\n- `Configuration <https://papis.readthedocs.io/en/latest/configuration.html>`__\n- `Import <https://papis.readthedocs.io/en/latest/importing.html>`__\n- `Editor integration <https://papis.readthedocs.io/en/latest/editors.html>`__\n\nQuestions?\n----------\n\nThe `docs <https://papis.readthedocs.io/en/latest/>`__ cover Papis' features and discuss possible work flows. If you still have questions, head to our `GitHub discussions <https://github.com/papis/papis/discussions>`__ \u2014 we're more than happy to help. If you've found a bug, please `open an issue <https://github.com/papis/papis/issues>`__ and help make Papis even better!\n\nReviews and blog posts\n----------------------\n\n- `Blog post <https://alejandrogallo.github.io/blog/posts/getting-paper-references-with-papis/>`__ about getting a paper's references with ``papis explore``.\n- `Blog post <http://nicolasshu.com/zotero_and_papis.html>`__ about using Papis with Zotero and Syncthing.\n- GNU/Linux Switzerland `wrote about Papis <https://gnulinux.ch/papis-dokumentenverwaltung-fuer-die-kommandozeile>`__ *(in German)*.\n- The folks at OSTechNix wrote a review of `Papis\n <https://www.ostechnix.com/papis-command-line-based-document-bibliography-manager/>`__.\n- A `review of Papis <https://ubunlog.com/papis-administrador-documentos/>`__ by Ubunlog *(in Spanish)*.\n\nContributing\n------------\n\nContributions are very welcome! Take a look at `CONTRIBUTING.md <https://github.com/papis/papis/blob/master/CONTRIBUTING.md>`__ for general rules and `HACKING.md <https://github.com/papis/papis/blob/master/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:.\n\nThe Papis ecosystem\n-------------------\n\nPapis has grown over the years and there are now a number of projects that extend Papis' features or integrate it with other software.\n\n.. list-table::\n :widths: 33 67\n :header-rows: 1\n\n * - Project\n - Maintained by\n\n * - `papis (core) <https://github.com/papis/papis-rofi/>`__\n - `Alejandro Gallo <https://alejandrogallo.github.io/>`__, `Julian Hauser <https://github.com/jghauser>`__, `Alex Fikl <https://github.com/alexfikl>`__\n\n * - `papis-rofi <https://github.com/papis/papis-rofi/>`__\n - `Etn40ff <https://github.com/Etn40ff>`__\n\n * - `papis-dmenu <https://github.com/papis/papis-dmenu>`__\n - you?\n\n * - `papis-vim <https://github.com/papis/papis-vim>`__\n - you?\n\n * - `papis.nvim <https://github.com/jghauser/papis.nvim>`__\n - `Julian Hauser <https://github.com/jghauser>`__\n\n * - `papis-emacs <https://github.com/papis/papis.el>`__\n - `Alejandro Gallo <https://alejandrogallo.github.io/>`__\n\n * - `papis-zotero <https://github.com/papis/papis-zotero>`__\n - `lennonhill <https://github.com/lennonhill>`__\n\n * - `papis-libgen <https://github.com/papis/papis-zotero>`__\n - you?\n\n * - `papis-firefox <https://github.com/papis/papis-firefox>`__\n - `wavefrontshaping <https://github.com/wavefrontshaping>`__\n\nRelated software\n----------------\n\nPapis isn't the only fish in the pond. You might also be interested in:\n\n- `bibman <https://codeberg.org/KMIJPH/bibman>`__ (opensource)\n- `cobib <https://github.com/mrossinek/cobib>`__ (opensource)\n- `jabref <https://www.jabref.org/>`__ (opensource)\n- `Mendeley <https://www.mendeley.com/>`__ (proprietary)\n- `pubs <https://github.com/pubs/pubs/>`__ (opensource)\n- `Xapers <https://finestructure.net/xapers/>`__ (opensource)\n- `Zotero <https://www.zotero.org/>`__ (opensource)\n\n\n.. |ghbadge| image:: https://github.com/papis/papis/workflows/CI/badge.svg\n :target: https://github.com/papis/papis/actions?query=branch%3Amaster+workflow%3ACI\n.. |RTD| image:: https://readthedocs.org/projects/papis/badge/?version=latest\n :target: http://papis.readthedocs.io/en/latest/?badge=latest\n.. |CodeQL| image:: https://github.com/papis/papis/workflows/CodeQL/badge.svg\n :target: https://github.com/papis/papis/actions?query=branch%3Amaster+workflow%3ACodeQL\n\n.. |Pypi| image:: https://badge.fury.io/py/papis.svg\n :target: https://pypi.org/project/papis/\n.. |zenodo_badge| image:: https://zenodo.org/badge/82691622.svg\n :target: https://zenodo.org/badge/latestdoi/82691622\n\n.. |first_glance| image:: https://papis.github.io/images/first_glance.gif\n.. |edit| image:: https://papis.github.io/images/edit.gif\n.. |bibtex_export| image:: https://papis.github.io/images/bibtex_export.gif\n.. |add| image:: https://papis.github.io/images/add.gif\n.. |web_app| image:: https://papis.github.io/images/web_app.jpg\n",
"bugtrack_url": null,
"license": "GPLv3",
"summary": "Powerful and highly extensible command-line based document and bibliography manager",
"version": "0.13",
"project_urls": {
"Homepage": "https://github.com/papis/papis"
},
"split_keywords": [
"biblatex",
"bibtex",
"biliography",
"books",
"cli",
"command-line",
"crossref",
"datasheets",
"document",
"elsevier",
"ieee",
"latex",
"libgen",
"mathematics",
"mendeley",
"papers",
"physics",
"pubmed",
"reference manager",
"research",
"science",
"scihub",
"tui",
"zotero"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "4f8d91fe0b2ed6a122ed2207fbc6686139af0e9c786480eca6256a3ddf76ff40",
"md5": "8f33824f88e2a991c1dca72828aadbb6",
"sha256": "f35a6aa938361bb67c5b77d916ac8cec587638ad7d86dc87a917ac608ec965a7"
},
"downloads": -1,
"filename": "papis-0.13.tar.gz",
"has_sig": false,
"md5_digest": "8f33824f88e2a991c1dca72828aadbb6",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.5",
"size": 244839,
"upload_time": "2023-05-07T15:08:21",
"upload_time_iso_8601": "2023-05-07T15:08:21.018178Z",
"url": "https://files.pythonhosted.org/packages/4f/8d/91fe0b2ed6a122ed2207fbc6686139af0e9c786480eca6256a3ddf76ff40/papis-0.13.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2023-05-07 15:08:21",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "papis",
"github_project": "papis",
"travis_ci": false,
"coveralls": true,
"github_actions": true,
"lcname": "papis"
}