The fundamentals of Salvus' implementation are published in this open access article:

In case you want to cite it, please use the following reference:

   author = {Afanasiev, Michael and Boehm, Christian and van Driel, Martin and Krischer, Lion and Rietmann, Max and May, Dave A and Knepley, Matthew G and Fichtner, Andreas},
   title = {Modular and flexible spectral-element waveform modelling in two and three dimensions},
   journal = {Geophysical Journal International},
   volume = {216},
   number = {3},
   pages = {1675-1692},
   year = {2019},
   doi = {10.1093/gji/ggy469}

There are a few more articles describing specific features of Salvus.

Solid-fluid coupling

Stochastic optimization with mini-batches

Goal-oriented meshing and discrete adjoints

Parallel mesh I/O

Full-waveform ambient noise inversion