Skip to main content

Opinionated event-driven abstraction for LangGraph. State IS events.

Project description

langgraph-events

Opinionated event-driven abstraction for LangGraph. State IS events.

[!CAUTION] Experimental (v0.13.0) - This is an early-stage personal project, not a supported product. The API will change without notice or migration path.

Quick Start

Group related commands and events into a Namespace; colocate the handler on the command.

from langgraph_events import Command, DomainEvent, EventGraph, Namespace


class Order(Namespace):
    class Place(Command):
        customer_id: str

        class Placed(DomainEvent):
            order_id: str

        def handle(self) -> Placed:
            return Order.Place.Placed(order_id=f"o-{self.customer_id}")


graph = EventGraph([Order.Place])
log = graph.invoke(Order.Place(customer_id="alice"))
print(log.latest(Order.Place.Placed))

@on(...) handlers add invariants, declared exceptions, and cross-namespace reactions. See Concepts and Control Flow.

Installation

pip install langgraph-events

# With AG-UI adapter support
pip install "langgraph-events[agui]"

# From source (development)
pip install git+https://github.com/cadance-io/langgraph-events.git

Documentation

Development

uv sync --group dev
uv run pytest tests/
uv run ruff check src/ tests/
uv run mypy src/

License

MIT - see LICENSE.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

langgraph_events-0.13.0.tar.gz (430.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

langgraph_events-0.13.0-py3-none-any.whl (118.0 kB view details)

Uploaded Python 3

File details

Details for the file langgraph_events-0.13.0.tar.gz.

File metadata

  • Download URL: langgraph_events-0.13.0.tar.gz
  • Upload date:
  • Size: 430.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.17 {"installer":{"name":"uv","version":"0.11.17","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for langgraph_events-0.13.0.tar.gz
Algorithm Hash digest
SHA256 3acdd40895fa516a36ba8964acb9f57afe57fda4f3c38da01dff2263a118aa8d
MD5 527420d91a9c727c71b42ac1ed0a4d77
BLAKE2b-256 871dd2f15bf91b464301ab3a1e7428acd55bb22223acf73909045604affe8560

See more details on using hashes here.

File details

Details for the file langgraph_events-0.13.0-py3-none-any.whl.

File metadata

  • Download URL: langgraph_events-0.13.0-py3-none-any.whl
  • Upload date:
  • Size: 118.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.17 {"installer":{"name":"uv","version":"0.11.17","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for langgraph_events-0.13.0-py3-none-any.whl
Algorithm Hash digest
SHA256 24e9f1fbe92453b61d7d937d0b1d777289350e35891a2b55d96ab0de4247fccb
MD5 c947bd28254cd42e7df15e3a5fe7ca03
BLAKE2b-256 d5e3e4e137c4a881ddb2e3b22ff9350fdf0c3ca451e8fe7d5c122a091776fc42

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page