  We present GLEAM (Galaxy Line Emission & Absorption Modeling), a Python tool
for fitting Gaussian models to emission and absorption lines in large samples
of 1D extragalactic spectra. GLEAM is tailored to work well in batch mode
without much human interaction. With GLEAM, users can uniformly process a
variety of spectra, including galaxies and active galactic nuclei, in a wide
range of instrument setups and signal-to-noise regimes. GLEAM also takes
advantage of multiprocessing capabilities to process spectra in parallel. With
the goal of enabling reproducible workflows for its users, GLEAM employs a
small number of input files, including a central, user-friendly configuration
in which fitting constraints can be defined for groups of spectra and overrides
can be specified for edge cases. For each spectrum, GLEAM produces a table
containing measurements and error bars for the detected spectral lines and
continuum, and upper limits for non-detections. For visual inspection and
publishing, GLEAM can also produce plots of the data with fitted lines
overlaid. In the present paper, we describe GLEAM's main features, the
necessary inputs, expected outputs, and some example applications, including
thorough tests on a large sample of optical/infra-red multi-object
spectroscopic observations and integral field spectroscopic data. gleam is
developed as an open-source project hosted at
https://github.com/multiwavelength/gleam and welcomes community contributions.
