The surface_dynamics package for SageMath adds functionality related to interval exchange transformations, translation surfaces, mapping classes and more. It is based on SageMath and relies heavily on: gmp or mpir for arbitrary precision arithmetic; PARI/GP for number field computations; GAP for finite groups representation and permutation groups; PPL (Parma Polyhedra Library) and LattE (Lattice point Enumeration) for polytope computations