Phoenix LiveView Demystified


ElixirConf 2019 - Aurora, Colorado USA


Phoenix LiveView is here to empower developers to build rich, real-time user experiences in Elixir without needing to write JavaScript. At the surface, this may seem like magic, but a closer look reveals how Phoenix leverages the primitives of the platform, with some front-end help from Morphdom.js, to make this programming model a compelling choice for beginners or experts alike.

Starting from the server to the browser, we’ll explore what makes Phoenix LiveView possible. Along the way, we’ll learn tips and tricks to make the most of your LiveView applications while seeing how Phoenix Channels and LiveEEx templates power the internals. We’ll also learn how LiveView is an abstraction over GenServer, giving us resiliency in the browser. Finally, we’ll cover how Phoenix LiveView interacts with JavaScript to provide bidirectional communication of events between the server and the browser.

Whether you’re a new or seasoned Elixir developer, you’ll leave with a new mental model of how Phoenix LiveView works to drive real-time user experiences all from server-rendered HTML.