Jido Assembly is an open-source Slack-clone reference application built to showcase the Jido ecosystem on the BEAM. It demonstrates how Jido Agents, Jido Messaging, Jido Signal, Jido Chat, and Hologram compose into a full multi-user chat application with channels, threads, reactions, presence, and optional Telegram/Discord bridges. Agents participate in rooms as first-class citizens using the same message model as humans. Hologram is used instead of Phoenix LiveView, keeping component state in the browser while compiling Elixir to JavaScript for client actions and using Server-Sent Events for broadcasts. The post walks through the full message lifecycle, explains the LiveView vs. Hologram tradeoffs, and describes how OTP supervision and BEAM concurrency underpin the architecture.
Table of contents
What Assembly includesFollow a message through AssemblyWhy we chose HologramThe packages behind the walkthroughWhy Elixir/OTP and the BEAM matterGet buildingQuestions this post answers
What is the difference between Hologram and Phoenix LiveView for Elixir web apps?
Hologram keeps component state in the browser and compiles Elixir code to JavaScript for client-side actions, using HTTP/2 for Action-to-Command requests and Server-Sent Events for broadcasts. LiveView keeps primary view state in server-side socket assigns, sends rendered diffs to the browser, and handles client-only behavior via JavaScript hooks. Hologram suits apps with many local UI events that benefit from Elixir logic running in the browser. Elixir developers weighing LiveView against Hologram for real-time apps find architecture comparisons like this on daily.dev.
How do Jido Agents send messages in a chat room without a separate AI persistence path?
Jido Agents send their responses through the same chat command as human messages. An Agent receives recent room context, generates a bounded reply, and that reply is submitted via the standard send_message_command. It receives the same message, Signal, thread, reaction, and search behavior as any human message, making agents first-class room participants rather than a separate chatbot layer. Teams building agent-native applications on the BEAM track Jido ecosystem developments on daily.dev.