A project's current state is written to a directory on disk when a simulation is created. Depending on the type of simulation, a separate exectuable reads those files, performs a computation, and writes output.