About This Title

Pages: 450
Published: March 2025
ISBN: 9781680508215
In Beta

Skill Level Meter

Programming Phoenix LiveView

Interactive Elixir Web Programming Without Writing Any JavaScript

by Bruce A. Tate and Sophie DeBenedetto

The days of the traditional request-response web application are long gone, but you don’t have to wade through oceans of JavaScript to build the interactive applications today’s users crave. The innovative Phoenix LiveView library empowers you to build applications that are fast and highly interactive, without sacrificing reliability. This definitive guide to LiveView isn’t a reference manual. Learn to think in LiveView. Write your code layer by layer, the way the experts do. Explore techniques with experienced teachers to get the best possible performance.


Once LiveView 1.0 is released the code will be updated to the latest version and content will be revised accordingly as we move closer to publication.

eBook Formats:

  • PDF for desktop/tablets

  • epub for Apple Books, e-readers

  • mobi for Kindle readers

Get all eBook formats here for $38.95 (USD)

Add to Cart we accept visa, mastercard, amex, discover, paypal

This book is in Beta, final version expected Mar 2025

Beta Books: What do I get?


Instead of settling for traditional manuals and tutorials, get insights that can only be learned from experience. Start with the Elixir language techniques that effortlessly marry your client templates and server-side handlers. Design your systems with the right layers in the right places so that your code is easier to understand, change, and support. Explore features like multi-part uploads and learn how to comprehensively test your live views. Roll into advanced techniques to tie your code to other services through the powerful publish-subscribe interface.

LiveView brings the most important programming techniques from the popular Elm and JavaScript React frameworks to Elixir. You’ll experience firsthand how to harness that power by working side by side with some of the first LiveView users. You will write your programs to change data on the server, and you’ll see how LiveView efficiently detects those changes and reflects them on the web page. Start from scratch, use built-in generators, and craft reusable components. Your single-purpose reducers will transform server data that your renderers can turn into efficient client-side diffs.

Don’t settle for knowing how things work. To get the most out of LiveView, you need to know why they work that way. Co-authored by one of the most prolific authors and teachers in all of Elixir, this book is your perfect guide to one of the most important new frameworks of our generation.

What You Need

Programming Phoenix LiveView uses Phoenix version 1.6, and any Elixir version compatible with it. You will also want PostgreSQL and JavaScript Node.

Resources

Releases:

  • B11.0 2024/06/26
  • B10.0 2023/09/06
  • B9.0 2023/03/21
  • B8.0 2022/10/14

Contents & Extracts

Note: Contents and extracts of beta books will change as the book is developed.

  • Preface
    Introduction
  • Code Generation
    • Phoenix and Authentication
      • CRC: Constructors, Reducers, and Converters
      • Phoenix is One Giant Function
      • Generate The Authentication Layer
      • Explore Accounts from IEx
      • Protect Routes with Plugs
      • Authenticate The Live View
      • Access Session Data in The Live View
      • Your Turn
    • Generators: Contexts and Schemas
      • Get to Know the Phoenix Live Generator
      • Run the Phoenix Live Generator
      • Understand The Generated Core
      • Understand The Generated Boundary
      • Boundary, Core, or Script?
      • Your Turn
    • Generators: Live Views and Templates
      • Application Inventory
      • Mount and Render the Product Index
      • Use Components to Render HTML
      • Handle Change for the Product Edit
      • Manage Data with Streams
      • Manage Change with a Form Component
      • Your Turn
  • LiveView Composition
    • Forms and Changesets
      • Model Change with Changesets
      • Model Change with Embedded Schemas
      • Use Embedded Schemas in LiveView
      • LiveView Form Bindings
      • Live Uploads
      • Your Turn
    • Function Components
      • The Survey
      • Organize Your LiveView with Components
      • Build The Survey Context
      • Organize The Application Core and Boundary
      • Build The Survey Live View
      • Build a Simple Function Component
      • Build the Demographic Show Function Component
      • Your Turn
    • Live Components excerpt
      • Build the Live Demographic Form Component
      • Manage Component State
      • Build The Ratings Components
      • List Ratings
      • Show a Rating
      • Show the Rating Form
      • Your Turn
  • Extend LiveView
    • Build an Interactive Dashboard
      • The Plan
      • Define The Admin.DashboardLive LiveView
      • Represent Dashboard Concepts with Components
      • Fetch Survey Results Data
      • Initialize the Admin.SurveyResultsLive Component State
      • Render SVG Charts with Contex
      • Add Filters to Make Charts Interactive
      • Refactor Chart Code with Macros
      • Your Turn
    • Build a Distributed Dashboard
      • LiveView and Phoenix Messaging Tools
      • Track Real-Time Survey Results with PubSub
      • Track Real-Time User Activity with Presence
      • Display User Tracking
      • Your Turn
    • Test Your Live Views
      • What Makes CRC Code Testable?
      • Unit Test Test Survey Results State
      • Integration Test LiveView Interactions
      • Verify Distributed Realtime Updates
      • Your Turn
  • Graphics and Custom Code Organization
    • Build the Game Core
      • The Plan
      • Represent a Shape With Points
      • Group Points Together in Shapes
      • Track and Place a Pentomino
      • Track a Game in a Board
      • Your Turn
    • Render Graphics With SVG
      • Plan the Presentation Layer
      • Define a Skinny GameLive View
      • Render Points with SVG
      • Compose With Components
      • Put It All Together
      • Your Turn
    • Establish Boundaries and APIs
      • It’s Alive: Plan User Interactions
      • Process User Interactions in the Core
      • Build a Game Boundary Layer
      • Extend the Game Live View
      • Add Help with JavaScript
      • Build a Picker to Control Navigation
      • Your Turn

Author

Bruce Tate is a programmer and CEO of Groxio where he is helping to redefine how computer languages are taught and learned. He’s the author of Seven Languages in Seven Weeks and Programming Phoenix, among other titles and has been involved with Elixir from the very beginning. He’s written more than 10 books.

Sophie DeBenedetto is an engineer at GitHub. She is a former graduate of, and teacher at, The Flatiron School and has a love of coding education. She has been an active member of the Elixir community for several years—she is co-organizer of, and speaker at, different Elixir conferences around the world, a podcast host, and a blogger.

eBook Formats:

  • PDF for desktop/tablets

  • epub for Apple Books, e-readers

  • mobi for Kindle readers

Get all eBook formats here for $38.95 (USD)

Add to Cart we accept visa, mastercard, amex, discover, paypal

This book is in Beta, final version expected Mar 2025

Beta Books: What do I get?

Related Titles:

Skill Level Meter

About This Title

Pages: 450
Published: March 2025
ISBN: 9781680508215
Edition: 1
In Beta