Packages
phoenix_live_state
0.1.0
PhoenixLiveState enables LiveView processes to share reactive state across a cluster of nodes. Attach LiveViews to a state server and get automatic assign synchronization.
Current section
Files
Jump to
Current section
Files
phoenix_live_state
CHANGELOG.md
CHANGELOG.md
# Changelog
All notable changes to this project will be documented in this file.
The format is based on [Keep a Changelog] and this project adheres to [Semantic Versioning].
---
## [0.1.0] - 2025-09-07
### Added
- Initial release of `phoenix_live_state`.
- GenServer-based shared state server (`PhoenixLiveState.StateServer`) per arbitrary key with global registration.
- Macros for concise integration:
- `use PhoenixLiveState, [{:state, opts}]` for defining a spec
- `use PhoenixLiveState, [{:client, live_state: SpecModule}]` for LiveView clients
- LiveView integration module (`PhoenixLiveState.LiveView.Integration`) providing:
- `live_state/2` to attach/start shared state and hydrate `@live_assigns`
- `live_assign/3` & bulk `live_assign/2` to mutate shared state
- Automatic broadcasting of state changes to all attached LiveViews with assign refresh
- ACL policy system
- TTL-based auto-shutdown: server schedules termination after last client detaches (default 60s).
- MIT License.
### Notes
- This is an early experimental version (pre-1.0); APIs may evolve.
- Designed for ephemeral collaborative or synchronized LiveView state without manual PubSub wiring.
[Unreleased]: https://github.com/your-org/your_library/compare/v0.1.0...HEAD
[0.1.0]: https://github.com/your-org/your_library/releases/tag/v0.1.0
[Keep a Changelog]: https://keepachangelog.com/en/1.1.0/
[Semantic Versioning]: https://semver.org/spec/v2.0.0.html