API

Main modules

Core functionality, main public interface

  • node - Units of a processing graph

  • tube - A whole processing graph!

  • runner - The thing that executes the processing graph

Secondary modules

Models, mixins, and helper classes that support the main modules and are also part of the public interface

  • asset - Static objects that can persist through graph processing cycles

  • config - Control how noob works

  • event - Data models for events

  • input - Types and collections for handling tube inputs

  • network - Data models and support for networked runners

  • scheduler - Keeps track of which nodes should run when

  • state - Manages assets

  • store - Manages events

  • types - Annotated and validating types used throughout noob

Utility modules

Internal or limited-use tools

  • const - constants!

  • exceptions - Custom exceptions and warnings raised by noob

  • introspection - Helpers for working with python type annotations

  • logging - what it says

  • testing - Nodes and other code useful for downstream packages testing things built with noob

  • utils - junk drawer

  • yaml - Mixin for locating and parsing tube config files