Scientific simulators and pipelines form the core of many research projects. Writing high-quality, modular code allows for efficiently scaling a project, but this can be challenging in a research context. Research project goals and solutions to those goals are constantly in flux, requiring many refactoring rounds to meet these changes. The result can be a progressively more unwieldy interconnected code. Here we present a system, caskade, which allows users to focus on modular components of a simulator, which are small and testable to ensure robustness. With caskade, one can turn these modular components into abstracted blocks that connect to form a powerful simulator. caskade manages the flow of parameter values through such a simulator.
Website: https://caskade.readthedocs.io