Skip to content

jam.plugins

plugins

Jam plugin system.

Classes:

Name Description
BasePlugin

Base plugin for Jam.

BasePlugin

BasePlugin(jam, config: dict | None = None)

Bases: ABC

Base plugin for Jam.

Warning

Plugins are experimental and may not be stable.

For usage, JAM_ENABLE_PLUGINS must be set to 1.
Example
from jam import Jam
from jam.plugins import BasePlugin


class MyPlugin(BasePlugin)
    name = "MyPlugin"

    def on_before_jwt_create(self, **kwargs):
        print("JWT CREATED")

jam = Jam(
    config="config.toml",
    plugins=[MyPlugin]
)

Parameters:

Name Type Description Default
jam BaseJam

The Jam instance.

required
config dict | None

Plugin configuration.

None

Methods:

Name Description
emit

Emit event.

setup

Called when plugin is initialized.

emit

emit(event: str, **kwargs) -> None

Emit event.

Parameters:

Name Type Description Default
event str

Event name

required
**kwargs

Event data

{}

setup

setup() -> None

Called when plugin is initialized.