ERKALE is a novel software program for computing X-ray properties, such as ground-state electron momentum densities, Compton profiles, and core and valence electron excitation spectra of atoms and molecules. The program operates at Hartree-Fock or density-functional level of theory and supports Gaussian basis sets of arbitrary angular momentum and a wide variety of exchange-correlation functionals. ERKALE includes modern convergence accelerators such as Broyden and ADIIS and it is suitable for general use, as calculations with thousands of basis functions can routinely be performed on desktop computers. Furthermore, ERKALE is written in an object oriented manner, making the code easy to understand and to extend to new properties while being ideal also for teaching purposes.