Introducing Phoenix Sync - James Arthur | ElixirConf EU 2025 | ElixirConf EU 2025
This talk was recorded at ElixirConf EU 2025. If you’re curious about our upcoming event, check https://elixirconf.eu
Abstract:
This talk introduces Phoenix.Sync, a new library that adds real-time sync to Postgres-backed Phoenix applications.
Software is increasingly being built on sync. It’s the secret sauce behind fast, collaborative apps with a great user experience, like Figma and Linear; and the new wave of AI apps and agents that need to run low latency inference on live, local data.
Phoenix has long had a rich set of state transfer and real-time primitives. However, as José outlined in his keynote at ElixirConf US in September 2024, these don’t fully solve sync. Particularly the hard challenges of partial replication, fan out and resilient data delivery at scale.
This talk introduces Phoenix.Sync, a new library that realises José’s vision of adding real-time sync to Phoenix. It allows you to sync data into both Phoenix.LiveView and frontend web and mobile applications. Using familiar function and macro APIs that integrate with Plug and Phoenix.{Controller, LiveView, Router, Stream}.
Key Takeaways:
Introduce the new Phoenix.Sync v0.4.3 — Documentation library
Learn how to sync data from Postgres into backend Elixir and LiveView applications.
Learn how to sync data through Phoenix into front-end web and mobile applications.
See the type of applications and AI systems you can build with Phoenix and sync.
Join the stream via Swapcard to ask questions and have a chat, but also, to celebrate the power of Elixir, do check out the low-latency conference stream delivered by Glitch.tv - software created in Elixir using WebRTC by Software Mansion
Comments welcome! View the code-sync and elixirconf-eu tags for more Code Sync and ElixirConf EU talks!
11 Likes
Great talk!
For the agent sync, LLM demo at the end, I wonder about the implementation; Is LLM stream being saved multiple times per second to DB, and then streamed to clients? Or is there some other buffering happening?
1 Like