LiveState (live_state v0.5.0)


LiveState is a library to manage application state for a non elixir hosted application. A LiveState application roughly follows the pattern of Event Driven Architecture. Rather than requests and reponses, in a LiveState application your client emits Events and receives changes to state (and possibly additional events). This allows your client code to concern itself only with how to render the appropriate state and dispatch the appropriate events.

The application state must be serializable as JSON. Currently the entire state is returned on each event, but future versions will implement JSON patch to send efficient updates.



LiveState uses Phoenix Channels to implement communication from the client. To use it, you'll want to start with a channel that uses the LiveState.Channel behaviour.

You'll also want to use a client library to connect to a LiveState application. Currently this exists for javascript in the live-state