Skip to main content
* ref-man-py

Python Module for ~ref-man~ (See https://github.com/akshaybadola/ref-man).

Network requests and xml parsing can be annoying in emacs, so ref-man uses a
separate python process for efficient (and sometimes parallel) fetching of
network requests.

* Features

** Persistent Service with Flask
- Can easily integrate with other applications
- Parallel fetching of large number of entries from supported websites
(DBLP, ArXiv etc.)

** HTTP integration with Semantic Scholar API (https://www.semanticscholar.org/product/api)
- Fetch with multiple IDs like arxiv, ACL etc.
- Local files based cache to avoid redundant requests
- +Fetches all metadata in one go (Will change soon as Semantic Scholar is
updating its API)+
- Now uses the Semantic Scholar Graph API

** Experimental (and undocumented) Semantic Scholar Search API
- Mostly gleaned through analyzing network requests. Helpful for searching
articles.

** HTTP integration with DBLP and ArXiv
- Supports multiple parallel requests for batch updates

** Fetch PDF from a given URL
- Easier to fetch using python than with Emacs's callbacks

** Option for proxying requests
- Particularly useful for PDFs if you're tunneling to your institution from
home or some other location and the article you want is with institutional
(IP based) access only.

* Roadmap

** More Tests
- Coverage is low.
- Need to remove some code which isn't used.
- Some parts need to be rewritten.

** Change to new Semantic Scholar API (*Done*)
Semantic Scholar is changing its API. See https://www.semanticscholar.org/product/api
we should migrate to new ~graph/v1/paper~ API.

** Integrate ~common_pyutil.net.Get~
It has support for progress tracking. Helpful when network is slow and when
downloading large files.

** ASGI server
With websockets for better Async integration.

** Integrate more services
There're semi-working/broken functions for CrossRef and some other services in
~ref-man~. They can be exported to python perhaps.

* Wishlist

** Serve Org files on the fly as html
Will help in integrating a larger userbase. Perhaps also with a py-to-lisp
(hy like maybe) interface so that elementary scripting on the org backend can
be done.

** Ultimately integrate ~pndconf~ also
A document preparation toolchain (See https://github.com/akshaybadola/pndconf),
which is integrated with ~ref-man~.

* License

All the code in this repo except for external services and libraries are
licensed under the MIT License. See ~LICENSE.md~ in this repo.

Some commits in the repository may be under a different license. If you use
those, you would have see the details of that License.

Metadata

Release files for ref-man-py 0.8.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for ref-man-py 0.8.0
File Size Uploaded
ref_man_py-0.8.0.tar.gz 27.4 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for ref-man-py 0.8.0
File Interpreter ABI Platform
ref_man_py-0.8.0-py3-none-any.whl Python 3 none any Details

Total release size: 57.3 kB

Release files / ref_man_py-0.8.0.tar.gz

Download URL ref_man_py-0.8.0.tar.gz
Size 27.4 kB
Tags Source
SHA-256 checksum
How to use checksums
a8506886608cd021fac569112c2ee5cfc52e1409412aa38be0fa2fd41a896182
BLAKE2b-256 checksum
How to use checksums
fe40c2f98ddc2fbfa8a7d644d69726a2129be9bd0228c480cd95384da8822fce
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via poetry/1.8.3 CPython/3.13.3 Linux/6.13.8-200.fc41.x86_64

Release files / ref_man_py-0.8.0-py3-none-any.whl

Download URL ref_man_py-0.8.0-py3-none-any.whl
Size 29.9 kB
Tags Python 3
SHA-256 checksum
How to use checksums
e8106ace65c37eb791309766ebdaf439919bcc23c4581cdafb9f41ec3380ffbc
BLAKE2b-256 checksum
How to use checksums
873d2d18886267b45bf57bf7feaa8982849d53dc750946d748db074ddf9747eb
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via poetry/1.8.3 CPython/3.13.3 Linux/6.13.8-200.fc41.x86_64

Release history Release notifications | RSS feed

This release

0.8.0 This release

2 release files

0.7.1

2 release files

0.7.0

2 release files

0.6.4

2 release files

0.6.3

2 release files

0.6.2

2 release files

0.5.2

2 release files

0.5.1

2 release files

0.5.0

2 release files

0.4.7

2 release files

0.4.6

2 release files

0.4.4

2 release files

0.4.1

2 release files

0.3.9

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page