We present INQ, a new implementation of density functional theory (DFT) and
time-dependent DFT (TDDFT) written from scratch to work on graphical processing
units (GPUs). Besides GPU support, INQ makes use of modern code design features
and takes advantage of newly available hardware. By designing the code around
algorithms, rather than against specific implementations and numerical
libraries, we aim to provide a concise and modular code. The result is a fairly
complete DFT/TDDFT implementation in roughly 12,000 lines of open-source C++
code representing a modular platform for community-driven application
development on emerging high-performance computing architectures for the
simulation of materials.