SALMON (Scalable Ab-initio Light-Matter simulator 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 Maxwells 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.