Phoenix uses a
server-side model–view–controller (MVC) pattern. Based on the Plug library, and ultimately the
Erlang HTTP server Cowboy, it was developed to provide highly performant and scalable
web applications. In addition to the request/response functionality provided by the underlying Cowboy server, Phoenix provides soft realtime communication to external clients through
WebSockets or
long polling using its language agnostic channels feature. Two notable features of Phoenix are LiveView and HEEx. LiveView provides real-time user experiences with server-rendered
HTML over
HTTP and WebSocket. HEEx is Phoenix's templating language which provides HTML-aware compile time checking. == See also ==