SALMON (Scalable Ab-initio Light–Mattersimulator for Optics and Nanoscience, http://salmon-tddft.jp) is a software package for the simulation of electron dynamics and optical properties of molecules, nanostructures, and crystalline solids based on first-principles time-dependent density functional theory. The core part of the software is the real-time, real-space calculation of the electron dynamics induced in molecules and solids by an external electric field solving the time-dependent Kohn–Sham equation. Using a weak instantaneous perturbing field, linear response properties such as polarizabilities and photoabsorptions in isolated systems and dielectric functions in periodic systems are determined. Using an optical laser pulse, the ultrafast electronic response that may be highly nonlinear in the field strength is investigated in time domain. The propagation of the laser pulse in bulk solids and thin films can also be included in the simulation via coupling the electron dynamics in many microscopic unit cells using Maxwell’s equations describing the time evolution of the electromagnetic fields. The code is efficiently parallelized so that it may describe the electron dynamics in large systems including up to a few thousand atoms. The present paper provides an overview of the capabilities of the software package showing several sample calculations. Program summaryProgram Title: SALMON: Scalable Ab-initio Light–Matter simulator for Optics and NanoscienceProgram Files doi:http://dx.doi.org/10.17632/8pm5znxtsb.1Licensing provisions: Apache-2.0Programming language: Fortran 2003Nature of problem: Electron dynamics in molecules, nanostructures, and crystalline solids induced by an external electric field is calculated based on first-principles time-dependent density functional theory. Using a weak impulsive field, linear optical properties such as polarizabilities, photoabsorptions, and dielectric functions are extracted. Using an optical laser pulse, the ultrafast electronic response that may be highly nonlinear with respect to the exciting field strength is described as well. The propagation of the laser pulse in bulk solids and thin films is considered by coupling the electron dynamics in many microscopic unit cells using Maxwell’s equations describing the time evolution of the electromagnetic field.Solution method: Electron dynamics is calculated by solving the time-dependent Kohn–Sham equation in real time and real space. For this, the electronic orbitals are discretized on a uniform Cartesian grid in three dimensions. Norm-conserving pseudopotentials are used to account for the interactions between the valence electrons and the ionic cores. Grid spacings in real space and time, typically 0.02 nm and 1 as respectively, determine the spatial and temporal resolutions of the simulation results. In most calculations, the ground state is first calculated by solving the static Kohn–Sham equation, in order to prepare the initial conditions. The orbitals are evolved in time with an explicit integration algorithm such as a truncated Taylor expansion of the evolution operator, together with a predictor–corrector step when necessary. For the propagation of the laser pulse in a bulk solid, Maxwell’s equations are solved using a finite-difference scheme. By this, the electric field of the laser pulse and the electron dynamics in many microscopic unit cells of the crystalline solid are coupled in a multiscale framework.