elixir-liveview

Installation
SKILL.md

Phoenix LiveView Patterns

Expert guidance for building real-time, interactive web applications with Phoenix LiveView.

Lifecycle & State

  • Keep mount/3 minimal — assign only what's needed for initial render
  • Use handle_params/3 for URL-driven state, not mount/3
  • Prefer assign_new/3 over assign/3 when value may already exist
  • Use assign_async/3 and start_async/3 for expensive operations
  • Never block mount/3 with slow database queries or API calls
# ✅ Good: Minimal mount, async loading
def mount(_params, _session, socket) do
  {:ok, assign(socket, page_title: "Dashboard", loading: true)}
end

def handle_params(%{"id" => id}, _uri, socket) do
Related skills
Installs
2
First Seen
Mar 7, 2026