Phoenix Web framework rises to 1.0 status

phoenix bird fire
Credit: Phillip Pryke

Phoenix, a Web framework intended for the "real-time Web" and "beyond the browser" usage, has reached the 1.0 release stage. "After a year and a half of work, 2,500 commits, and 30 releases, Phoenix 1.0 is here," developer Chris McCord said in a blog post on Friday.

The framework was written in the Elixir dynamic functional language and implements the server-side MVC pattern. It serves as the top layer of a multilayer system intended to provide modularity and flexibility; other layers include Plug, which is a specification for building composable modules for Web applications, and Ecto, a language-integrated query composition tool and database wrapper for Elixir.

McCord cites the framework's syntax, tooling, and fast runtime as highlights. He also notes the intention to tackle the real-time Web. "The goal was to make real-time communication just as trivial as writing a REST endpoint," he said. "We've realized that goal with channels."

These channels provide a multiplexed connection to the server for bidirectional communications. "Phoenix also abstracts the transport layer, so you no longer have to be concerned with how the user has connected," said McCord. "Whether WebSocket, long-polling, or a custom transport, your channel code remains the same." Also featured is a JavaScript client that provides an API for client-server communication.