BEAM There, Done That

← BEAM There, Done That24 jul · 45 min

Elixir in the Browser: Bart Blast on Hologram

Elixir in the Browser: Bart Blast on Hologram24 jul45 min

<p>What if instead of making your server smarter to handle the browser, you just ran your Elixir in the browser instead?</p><p>That's the bet Bart Blast has been making for six years - three of them full time. Hologram is a full-stack web framework that compiles Elixir to JavaScript and rebuilds the Erlang runtime in the browser: pattern matching engine, OTP guarantees, boxed types, all of it. No JavaScript to write. No round trip on every interaction. No inconsistent state between client and server.</p><p>This is the fourth episode in the podcast's ongoing series on where state should live - following Chris McCord on durable servers, Adi Iyengar on building a web framework, and Brooklyn Zelenka and Robert Virding on local-first. Bart made the opposite bet to Live View.</p><p>Topics include:</p><ul><li>​why Bart spent six years building this instead of reaching for existing tools - and why the answer is "plain frustration"</li><li>​the latency ceiling you can't engineer past on the server, and why bandwidth improvements don't help</li><li>​how Hologram actually works: pulling the expanded AST from compiled BEAM files, normalizing it, lowering to an IR, and encoding to a JS runtime - including a real pattern matching engine and boxed types</li><li>​why Hologram doesn't merge front end and back end - there's still a clear separation, just one language crossing it</li><li>​actions vs. commands: the two behavior primitives and which side of the client/server boundary each lives on</li><li>​where Live View wins over Hologram - and Bart is honest about this (private logic, data-heavy apps, maturity)</li><li>​how Hologram compares to Luster (Gleam's equivalent) and why neither is competing with the other</li><li>​when you should not use Hologram yet</li><li>​where it's all heading: local-first sync layer, mobile, desktop, and eventually a single Elixir codebase for everything</li></ul><p>Recorded June 18, 2026.</p><p><strong>Resources mentioned:</strong></p><ul><li>​hologram.page</li><li>​hologram.page/newsletter</li><li>​GitHub: barb/hologram</li><li>​Discord: hologram community</li><li>​Hologram tag on Elixir Forum</li><li>Website: https://hologram.page</li><li>GitHub: https://github.com/bartblast/hologram</li><li>Newsletter: https://hologram.page/newsletter</li><li>Discord: https://discord.com/invite/huJWNuqt8J</li><li>Elixir Forum: https://elixirforum.com/hologram</li><li>X: https://x.com/Bart_Blast</li><li>LinkedIn: https://www.linkedin.com/in/bartblast/</li><li>Bluesky: https://bsky.app/profile/bartblast.com</li><li>Slack: https://elixir-lang.slack.com/channels/hologram</li></ul>