Skip to content

Plugins

Plugin packages register Plugin objects through entry points in the data_designer.plugins group. A plugin registration ties a config class to its implementation class and declares its PluginType.

Related pages: Build Your Own, Column Generators, Seed Readers, Engine Processors, and Processor Configurations.

Plugin

Bases: BaseModel

Declares a Data Designer plugin by tying a config class to its implementation class.

A plugin package exposes one Plugin instance per extension through an entry point in the data_designer.plugins group. Data Designer discovers the entry point on import, loads the referenced classes, and registers the plugin so its config type is usable like any built-in Data Designer object.

Attributes:

Name Type Description
impl_qualified_name str

Fully-qualified import path of the implementation class, e.g. 'my_plugin.impl.MyColumnGenerator'. The plugin loader verifies that the referenced class exists.

config_qualified_name str

Fully-qualified import path of the config class, e.g. 'my_plugin.config.MyConfig'. The class must define a Literal discriminator field with a string default.

plugin_type PluginType

The kind of extension this plugin contributes. Determines which discriminator field name is required on the config class: column_type, seed_type, or processor_type.

PluginType

Bases: str, Enum

The kind of Data Designer extension a plugin contributes.

Attributes:

Name Type Description
COLUMN_GENERATOR

A custom column type whose config inherits from SingleColumnConfig and uses column_type as its discriminator.

SEED_READER

A custom seed dataset reader whose config inherits from SeedSource (or FileSystemSeedSource) and uses seed_type as its discriminator.

PROCESSOR

A custom processor whose config inherits from ProcessorConfig and uses processor_type as its discriminator.