  Multiphysics processes in fractured porous media is a research field of
importance for several subsurface applications and has received considerable
attention over the last decade. The dynamics are characterised by strong
couplings between processes as well as interaction between the processes and
the structure of the fractured medium itself. The rich range of behavior calls
for explorative mathematical modelling, such as experimentation with
constitutive laws and novel coupling concepts between physical processes.
Moreover, efficient simulations of the strong couplings between multiphysics
processes and geological structures require the development of tailored
numerical methods.
  We present a modelling framework and its implementation in the open-source
simulation toolbox PorePy, which is designed for rapid prototyping of
multiphysics processes in fractured porous media. PorePy uses a
mixed-dimensional representation of the fracture geometry and generally applies
fully implicit couplings between processes. The code design follows the
paradigms of modularity and differentiable programming, which together allow
for extreme flexibility in experimentation with governing equations with
minimal changes to the code base. The code integrity is supported by a
multilevel testing framework ensuring the reliability of the code.
  We present our modelling framework within a context of thermo-poroelasticity
in deformable fractured porous media, illustrating the close relation between
the governing equations and the source code. We furthermore discuss the design
of the testing framework and present simulations showcasing the extendibility
of PorePy, as well as the type of results that can be produced by
mixed-dimensional simulation tools.
