Phoenix is a high-performance, productive web development framework written in Elixir. It runs on the Erlang VM (BEAM). It is designed to support both traditional request/response web applications. It also supports real-time, soft-real-time applications via WebSockets, channels, PubSub, and presence features. Phoenix emphasizes fault tolerance, scalability, and developer productivity. It provides tools like code generators, LiveView integration, templating, routing, and a flexible plug pipeline. Phoenix runs on the Erlang VM with the ability to handle millions of WebSocket connections alongside Elixir's tooling for building robust systems. Know who is connected right now, across one or dozens of nodes, by using our built-in Presence. No dependency required.
Features
- LiveView integration for building interactive, real-time user interfaces without heavy client-side JavaScript
- Channels / PubSub for real-time messaging and broadcasting across processes and nodes
- Code generators (e.g. phx.new, phx.gen.live, phx.gen.auth) to scaffold web apps quickly
- Support for scopes / secure data access patterns (added in Phoenix 1.8)
- Integration with CSS/theming frameworks (Tailwind + daisyUI) for styling and UI theming
- Optimized performance, minimal overhead, and scalability on BEAM (Elixir/Erlang VM)