Motivation ========== When first becoming acquainted with the wonderful `Dash `_ framework, it is not immediately obvious how to write and organize code that is scalable, modular, and `DRY `_ for increasingly complex apps. Although, `Dash `_ documentation does touch on application structure `here `_, some felt that something was still missing that could be resolved with a more object-oriented approach. See `this issue on GitHub `_ for a very good discussion on this topic. The foundation for ``dash_building_blocks`` was bourne out of this discussion, particularly `Ned's comment `_ introducing the idea of a ``BaseBlock`` that would link a layout to its relevant callbacks, effectively creating a reusable and inheritable "block" of Dash components.