jellycell.server.sse

SSE broker and event schema for the live viewer.

Module Contents

Classes

ReloadEvent

A reload event — client should refresh a notebook page.

ArtifactEvent

An artifact changed — client can refresh image src without full reload.

ReloadBroker

In-process pub/sub broker for SSE subscribers.

Functions

event_to_sse

Serialize an Event into the dict shape expected by sse_starlette.

Data

API

class jellycell.server.sse.ReloadEvent

A reload event — client should refresh a notebook page.

type: Literal[reload]

‘reload’

path: str

‘/’

class jellycell.server.sse.ArtifactEvent

An artifact changed — client can refresh image src without full reload.

type: Literal[artifact]

‘artifact’

path: str

‘/’

jellycell.server.sse.Event

None

class jellycell.server.sse.ReloadBroker

In-process pub/sub broker for SSE subscribers.

Initialization

publish(event: jellycell.server.sse.Event) None

Fan out event to every subscriber. Non-blocking.

async subscribe() collections.abc.AsyncIterator[jellycell.server.sse.Event]

Yield events for one subscriber. Cleans up on cancellation.

jellycell.server.sse.event_to_sse(event: jellycell.server.sse.Event) dict[str, str]

Serialize an Event into the dict shape expected by sse_starlette.