  ADC-connect (adcc) is a hybrid python/C++ module for performing excited state
calculations based on the algebraic-diagrammatic construction scheme for the
polarisation propagator (ADC). Key design goal is to restrict adcc to this
single purpose and facilitate connection to external packages, e.g., for
obtaining the Hartree-Fock references, plotting spectra, or modelling solvents.
Interfaces to four self-consistent field codes have already been implemented,
namely pyscf, psi4, molsturm, and veloxchem. The computational workflow,
including the numerical solvers, are implemented in python, whereas the working
equations and other expensive expressions are done in C++. This equips adcc
with adequate speed, making it a flexible toolkit for both rapid development of
ADC-based computational spectroscopy methods as well as unusual computational
workflows. This is demonstrated by three examples. Presently, ADC methods up to
third order in perturbation theory are available in adcc, including the
respective core-valence separation and spin-flip variants. Both restricted or
unrestricted Hartree-Fock references can be employed.
