u/kraleppa

LiveStash v1.0.0: Persist Phoenix LiveView state across reconnects
▲ 75 r/elixir

LiveStash v1.0.0: Persist Phoenix LiveView state across reconnects

Hi, we just released LiveStash v1.0.0!

LiveStash is a lightweight, modular library that backs up and restores your Phoenix LiveView assigns when a user drops their connection (like switching tabs or entering an elevator)

What's New in v1.0.0:

  • ⚡ Mnesia Adapter: Added full cluster state replication with split-brain auto-heal.
  • 🔒 Explicit Security (Breaking): You must now explicitly set :security_mode (:sign or :encrypt) for the browser memory adapter.
  • 🛡️ Stability and performance improvements: we've tested the library with 25,000 concurrent users on a distributed cluster and created a blogpost with the results

With this release, LiveStash is entering maintenance mode. We won't be adding new features, but we will actively fix bugs, review PRs, and keep it fully compatible with future Phoenix updates.

Performance Blogpost: https://swmansion.com/blog/live-stash-performance-tests/

GitHub: https://github.com/software-mansion-labs/live-stash

u/kraleppa — 4 days ago
▲ 36 r/elixir

LiveStash v0.3.0 is out! Redis adapter and auto-stashing for LiveView

Hi everyone,

We just released v0.3.0 of LiveStash - our library built at Software Mansion to fix the problem of losing Phoenix LiveView state on WebSocket reconnects.

This update brings two heavy-lifting features for distributed apps and better DX:

  • Redis Adapter: State lives securely in Redis, while the browser only holds a lightweight reference.
  • Opt-in Automatic Stashing: LiveStash detects changes in stashed assigns and updates them automatically (no need for explicit stash/1 calls anymore).

If you have any questions feel free to reply here, create an issue, or start a new thread on GitHub discussions.

Links:

u/kraleppa — 2 months ago