Search⌘ K
AI Features

Before We Start

Explore the fundamentals of Phoenix LiveView and how it enables real-time web interfaces without heavy JavaScript. Understand modern web development evolution, code layering, and prepare to build interactive applications using this powerful framework.

What’s this course about?

LiveView is one of the most exciting features in the Phoenix web framework. It’s a new way of developing fluid, real-time web interfaces without writing JavaScript. In this course, you’ll learn the basic abstractions that make LiveView work. You’ll also explore techniques that help you organize your code into layers that make sense. We will try not to bore you with a tedious feature-by-feature march. Instead, we’ll help you grasp LiveView by building a non-trivial application together.

Prerequisites

This course is for advanced beginners and intermediate programmers who want to build web applications using Phoenix LiveView. You must be familiar with basic Elixir development, HTML, and CSS.

Web development before Phoenix

The nature of web development is changing. For many years, programmers needed to build web programs as many tiny independent requests with responses. Teams had most developers dedicated to writing programs to serve requests and only a few developers dedicated to design. Life was simple. Applications were easy to build, even though the user experience was sadly lacking. For most tasks, simple request-response apps were good enough.

Enough time passed that yesterday’s good enough didn’t quite cut it anymore, and users demanded more. Web development slowly evolved into a mix of tools and frameworks split across the client and server to meet these demands. Take any of these examples:

  • Instead of loading content page by page, modern Twitter and Facebook feeds load more content as a user scrolls down.
  • Rather than having an inbox for an email client with a “refresh” button, users want a page that adds new emails to their inbox in real-time.
  • Search boxes auto-complete based on data in the database.

These kinds of web projects are sometimes called single-page apps (SPAs).