Arvo is an application-layer TypeScript toolkit for structuring business logic around contracts and events. A handler accepts events defined by its contract, produces events that follow that contract and accesses state through a common interface. The documentation applies this model to ordinary services, workflows, agents and human-in-the-loop coordination rather than treating each as a separate architectural pattern.
Arvo explicitly distinguishes itself from infrastructure: it is not an event broker, hosting platform or replacement for an application's deployment services. The goal is to keep business logic separate from the integration code that connects it to servers, queues or distributed systems. The official guides cover runtime schema validation, typed event factories, versioned contracts, declarative and imperative orchestration, testing and OpenTelemetry observability. Developers still choose the surrounding broker, storage and runtime where those are needed. It suits TypeScript teams looking for shared event-handling conventions across services without committing their domain logic to one infrastructure provider.





