Skip to main content

An arXiv Reading App (aara)

A super simple Textual application for reading the latest posts on the arXiv in the terminal. This scrapes the arXiv "new" page from the category you specify. I found the arXiv search API to be lacking in functionality and the RSS feeds are blank if there was no update that day (e.g. like on a Saturday or Sunday). So, I wrote my own terminal app to read the arXiv.

Installation

To install:

pip install aara

For development only (using uv):

git clone https://github.com/jsnguyen/aara
cd aara
uv run aara astro-ph

Usage

Just run:

# For astro-ph
aara astro-ph

More generally:

aara <arXiv category>

Config

Configs are stored at ~/.config/aara/aara.ini.

You can change the save name parameter by changing num_words, which currently takes the first 4 words of the title by default.

You can also change the save directory by modifying the downloads_folder variable to a valid path.

Bindings

Basic vim bindings are implemented, hjkl, g, G, and {}. The arrow keys can also be used for navigation. Note that scrolling in abstract window using the vim bindings doesn't work quite yet, but this is a pretty rare occurrence.

a opens the abstract of the article using your web browser

s will save the pdf to the location specified in the config, but if you haven't set anything it goes to ~/Downloads by default. The naming scheme is <arxiv id>_<year>_<first author last name>_<first four words title>.pdf.

d will open the pdf of the article directly

q to quit

Misc

There is also a state file stored at ~/.config/aara/state.ini that tracks what pdf files you have already saved. This is not designed to be human-editable and is automatically loaded if it exists. It will overwrite every time you close the application.

Metadata

Release files for aara 0.0.7

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

Source distribution (sdist)

Source distribution for aara 0.0.7
File Size Uploaded Provenance
aara-0.0.7.tar.gz 51.7 kB Without provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for aara 0.0.7
File Interpreter ABI Platform
aara-0.0.7-py3-none-any.whl Python 3 none any Details

Total release size: 57.9 kB

Release files / aara-0.0.7.tar.gz

Download URL aara-0.0.7.tar.gz
Size 51.7 kB
Tags Source
SHA-256 checksum
How to use checksums
723abb5892d9f63ac16da1a2e626805c3c5a4adcccc1d5f377b776ca1c15c334
BLAKE2b-256 checksum
How to use checksums
589489a31cd801b4010acb7a968bf35c8c136edc34bdff5230472b9c054a788b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.8.14

Release files / aara-0.0.7-py3-none-any.whl

Download URL aara-0.0.7-py3-none-any.whl
Size 6.3 kB
Tags Python 3
SHA-256 checksum
How to use checksums
1e14a9f110e17a596dc5137b72d98effc97fadc411fb417659c7d42deba34da8
BLAKE2b-256 checksum
How to use checksums
6419c8fd91118091ed00da99eafa207ce8149fda96bc89f4941fcc7be16adff1
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.8.14

Security for aara 0.0.7

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.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

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