TidalPy performs semi-analytic calculations of tidal dissipation and subsequent orbit-spin evolution for rocky and icy worlds. It can be used as a black box, in which an Object-Oriented Programming (OOP) scheme performs many calculations with very little user input from the user, making it easy to get started with the package, or as a toolbox, as it contains many efficient functions to perform calculations relevant to tides and thermal-orbital coupling, which can be quickly imported and used in a custom scripts. In general, TidelPy's toolbox (functional) scheme provides much higher performance, flexibility, and extensibility than the OOP scheme. It also makes assumptions more visible to the user. The downside is the user may need to be more familiar with the underlying physics.
Please see citation information here: https://github.com/jrenaud90/TidalPy#using-tidalpy-for-science