simmer is a process-oriented and trajectory-based Discrete-Event Simulation (DES) package for R. Designed to be a generic framework like SimPy or SimJulia, it leverages the power of Rcpp to boost the performance and turning DES in R feasible. As a noteworthy characteristic, simmer exploits the concept of trajectory: a common path in the simulation model for entities of the same type. It is pretty flexible and simple to use, and leverages the chaining/piping workflow introduced by the magrittr package.


Documentation is available at

Mailing list

For bugs and/or issues, create a new issue on GitHub. For other questions or comments, please subscribe to the simmer-devel mailing list. You must be a member to post messages, but anyone can read the archived discussions.


Install the release version from CRAN:


The installation from GitHub requires the devtools package.


Please note that the package contains some C++ code and thus you need a development environment to build the package (e.g. Rtools for Windows).

Learning simmer

To get started, please explore our vignettes online, or in R:

vignette(package = "simmer")