  Solving the question of the origin of ultra-high energy cosmic rays (UHECRs)
requires the development of detailed simulation tools in order to interpret the
experimental data and draw conclusions on the UHECR universe. CRPropa is a
public Monte Carlo code for the galactic and extragalactic propagation of
cosmic ray nuclei above $\sim 10^{17}$ eV, as well as their photon and neutrino
secondaries. In this contribution the new algorithms and features of CRPropa 3,
the next major release, are presented. CRPropa 3 introduces time-dependent
scenarios to include cosmic evolution in the presence of cosmic ray deflections
in magnetic fields. The usage of high resolution magnetic fields is facilitated
by shared memory parallelism, modulated fields and fields with heterogeneous
resolution. Galactic propagation is enabled through the implementation of
galactic magnetic field models, as well as an efficient forward propagation
technique through transformation matrices. To make use of the large Python
ecosystem in astrophysics CRPropa 3 can be steered and extended in Python.
