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.15.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.15.0.tar.gz (442.2 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.15.0-py3-none-any.whl (122.7 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: langgraph_events-0.15.0.tar.gz
  • Upload date:
  • Size: 442.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.19 {"installer":{"name":"uv","version":"0.11.19","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.15.0.tar.gz
Algorithm Hash digest
SHA256 9ae82d136ce32b71bebb69cba6f8f426456ecbce5dabe1d96cc5c9a414996d30
MD5 354c9fe829cbdb8abba42dba8d85b629
BLAKE2b-256 297f88564c9f833912b88e2aca1cb1b8ecd0b788639ef3dffe3dcf5091641cd3

See more details on using hashes here.

File details

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

File metadata

  • Download URL: langgraph_events-0.15.0-py3-none-any.whl
  • Upload date:
  • Size: 122.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.19 {"installer":{"name":"uv","version":"0.11.19","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.15.0-py3-none-any.whl
Algorithm Hash digest
SHA256 75f1bdf2c3c3db4e4db9107602ff83bb3159a266c11164bde8ac2f80ff365c4c
MD5 f9c4de011d3457d62afa87590e14f1a3
BLAKE2b-256 fdf21888f413c6d173a886dea330631740556f3a5ac0eacd3f49ef70f30d0f48

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