  We present an object-oriented Python library for computation of properties of
highly-excited Rydberg states of alkali atoms. These include single-body
effects such as dipole matrix elements, excited-state lifetimes (radiative and
black-body limited) and Stark maps of atoms in external electric fields, as
well as two-atom interaction potentials accounting for dipole and quadrupole
coupling effects valid at both long and short range for arbitrary placement of
the atomic dipoles. The package is cross-referenced to precise measurements of
atomic energy levels and features extensive documentation to facilitate rapid
upgrade or expansion by users. This library has direct application in the field
of quantum information and quantum optics which exploit the strong Rydberg
dipolar interactions for two-qubit gates, robust atom-light interfaces and
simulating quantum many-body physics, as well as the field of metrology using
Rydberg atoms as precise microwave electrometers.

Atomic Physics;Atomic and Molecular Clusters;Computational Physics;Quantum Physics