User-Developed Tools for ADS


ADS was started in the late 1980s by astronomers, for astronomers, and has long received public funding via NASA grants. This history has meant that we’ve long been open to community involvement, and we’ve taken this a step further with the new ADS. The new ADS’s codebase is open-source, which means that the code that makes up our website and data pipelines is available for users to look at, contribute to, or use for their own projects. Also, we’ve made our database more accessible by allowing users to access our holdings via our API.

The API in particular has enabled users to develop an ecosystem of new tools to keep up with the literature and to maintain professional and personal bibliographies. In this post, we highlight a few of these third-party tools developed by our user community. Note that these tools were all developed independently of ADS, so if you have questions about them, please contact the developers directly.

The ADS Python library (Github, Read the Docs, PyPI) was developed by Andy Casey and collaborators. While the API can be accessed via Python without using this library, the library provides a more user-friendly interface and more efficient memory usage.

The Kepler Guest Observer Office’s publications list is maintained with their kpub tool (Github), using the ADS Python library highlighted above. Casual browsers can view mission publication lists and statistics on the KeplerGO website, while astronomers involved in the mission can add relevant publications to the Kepler bibliography with the kpub tool.

Astropy’s astroquery (Github, Read the Docs) package is a standardized interface for querying various astronomical databases. A module for querying ADS via our API is included in the larger package.

Ads2gephi (Github), written by Theodor Costea for a project run by historian of science Karin Pelte, is a package that queries ADS and returns the results in a format compatible with Gephi, a popular network visualization tool. In these networks, individual papers serve as graph nodes, while citations and references serve as the edges connecting them. The ads2gephi tool enables this data extraction and readies the extracted data for visualization.

Several users have created bibliography management tools to make it easier for astronomers to manage their reference lists:

  • ADS to BibDesk (Github, PyPI), written by Rui Xue for MacOS, is based on an older version of a package by the same name (Github) originally developed for Classic by Jonathan Sick but updated by Xue to use the new ADS’s API. Like the older package, ADS to BibDesk uses ADS to update and maintain the user’s local BibDesk database.
  • Bibmanager (Github, Read the Docs, PyPI), written by Patricio Cubillos, is a combination bibliography manager, LaTeX .bib file generator, and ADS query tool. With bibmanager, at the command line you can search ADS for new or updated papers, add them to your main bibliography database, and generate the bibliography file for a LaTeX document that already contains citations.
  • Adstex (Github, PyPI), written by Yao-Yuan Mao, allows you to bypass downloading BibTeX or other paper metadata to a master local database. Instead, you write your paper using TeX and cite commands as normal, then run adstex on the TeX document. The tool checks your paper for any cite commands, queries ADS, and downloads the necessary BibTeX entries to a .bib file for the paper.

Let us know if you’ve written or if you use any other tools that use our API! We may include them in an updated version of this post in the future. And if you haven’t yet tried out our API for your own projects, find our Jupyter notebooks with instructions and example code on our Github repo.