从原型到生产,安心无忧

快速构建丰富、交互式的 Web 应用程序,代码更少,部件更少。加入我们不断壮大的开发者社区,使用 Phoenix 来构建 API、HTML5 应用程序等,无论是为了乐趣还是为了规模。

defmodule TimelineLive do
  use Phoenix.LiveView

  def render(assigns) do
    render("timeline.html", assigns)
  end

  def mount(_, socket) do
    Twitter.subscribe("elixirphoenix")
    {:ok, assign(socket, :tweets, [])}
  end

  def handle_info({:new, tweet}, socket) do
    {:noreply,
     update(socket, :tweets, fn tweets ->
       Enum.take([tweet | tweets], 10)
     end)}
  end
end
                      
https://my-phx-app.com

@theadamconrad
很高兴在 @seradio 的 #elixirlang #phoenix 最新最棒的 LiveView 框架的第一个播客中与 @chris_mccord 交流。

Phoenix LiveView

构建交互式 Web 应用程序的最佳体验 - 无需复杂性。

立即尝试

您需要的一切,都能帮助您发布

实时

与用户互动并推送事件,通过我们的内置 PubSub 和 Channels,跨越一个或数十个节点。

身份验证

运行 mix phx.gen.auth 以获得与您的应用程序一起成长的功能齐全的身份验证。

GraphQL & JSON API

使用 Absinthe 构建可扩展的 GraphQL 应用程序,或使用我们内置的 JSON 支持来构建一流的 API。

Docker 就绪

打包您的应用程序,并(可选)生成 Dockerfile 以实现轻松部署,无论您选择在何处运行应用程序。

指标

内置的仪表盘和 实时仪表盘 使您能够深入了解您的应用程序。直接在应用程序中监控性能并诊断问题。

可扩展

Phoenix 运行在 Erlang VM 上,能够处理数百万个 WebSocket 连接,以及 Elixir 用于构建健壮系统的工具。

在场

使用我们的内置 Presence,您可以知道现在谁已连接,跨越一个或数十个节点。无需依赖项。

数据库

Ecto 是一个围绕您的数据库的精简接口,专注于生产力和长期可维护性。内置 Postgres、MySQL、SQLite 和 SQL Server。

将前端和后端功能最佳地结合在您的 HTML 中

HEEx(HTML + Embedded Elixir)是一种高性能模板语言,支持可重用组件。

可重用组件

将您的 HTML 封装到功能性和可重用构建块的自然语法

编译器检查

为您的组件声明属性和插槽,并在您的编辑器中立即获得反馈 - 说再见吧,打字错误和猜测。

内置格式化

使用单个命令格式化整个代码库 - 无论是编写 Elixir 还是 HTML。忘记繁琐地摆弄复制/粘贴的代码块。

使用 Phoenix 的公司

最新消息

Phoenix LiveView 1.0-rc 现已发布!

作者:Chris McCord

LiveView 1.0 的第一个发布候选版本现已推出!

了解更多

Phoenix LiveView 0.19 发布

作者:Chris McCord

LiveView 0.19.0 现已推出!此版本包含期待已久的动态表单功能、新的流原语,并缩短了与 1.0 版本的距离。

了解更多