Awai is a dependency-free state-management library for JavaScript and TypeScript. Its documentation centers on AwaiEvent, a promise-like object that can resolve repeatedly rather than ending after a single result. The library uses that event model alongside state and action nodes to organize asynchronous logic. Its examples demonstrate keeping a todo list's state and actions outside the user interface, with separate functions for creating, deleting and toggling tasks.
The project also documents Scenarios, a helper for describing event sequences with asynchronous functions, and links a React integration for connecting the state layer to a UI. This makes Awai relevant to developers who want business logic to be independent of rendering while still coordinating changing state and events. The official documentation labels the library experimental and links an MIT license. Developers evaluating it should test the event semantics and integration against their own race conditions and application lifecycle rather than assume a drop-in replacement for an existing state library.




