bartblast
Hologram standalone mode - wishlist and ideas
Some great comments in the home page thread shifted toward what you’d like to see in Hologram’s future, particularly standalone mode. I’ve split those comments here so we can have a focused discussion.
Quick context on the two modes:
- Embedded (Phoenix-based): The current version where Hologram works as a library within Phoenix applications
- Standalone: The upcoming version that will work independently of Phoenix
What would you like to see in standalone mode? What features or capabilities would make it a must-have for your projects?
Looking forward to your ideas!
Most Liked
jam
IMO, HEAT would be better. Bring the HEAT ![]()
Personally I’m looking forward to keeping it simple with Hologram, Elixir, and scoped CSS ![]()
bartblast
The vision you’re describing here aligns pretty closely with where Hologram is headed. It’s not meant to be just a web framework - the goal is to build it into a development platform for cross-platform development with isomorphic components that can run through WebView and Web APIs (web/mobile/desktop). Also things like Hologram widgets you can embed in existing apps, JS interop with React/Vue/Svelte, serverless deployments, and eventually web extensions and more targeted transpilation.
The thing is, we need to build this in a specific order. Starting with web makes the most sense because it’s the most urgent community need, and there are already early adopters giving feedback that helps shape the direction. Plus, if we can solve web and local-first well enough, it should create momentum to support the project financially - like through paid courses or content - which would let me work on this full-time.
From there the plan is: PWA → mobile → desktop → extensions/serverless/advanced transpilation features. As I work on the web part, I’m gathering different use cases - for example, when I started I didn’t think about browser extensions at all, but it seems to be one of many possible deployment targets.
One thing I should mention - a lot of people think transpiling to JS is just a 1-1 translation of Elixir code, but it’s actually much more involved. The Elixir world is quite different from the JS world, and concepts don’t translate one to one. You essentially need an Elixir runtime in the browser, call graph analysis, process management eventually, and more. Even if I extracted just the transpilation parts (which would be quite a lot of work since it’s relatively coupled with the framework right now), you’d quickly realize you need much more than just transpilation - you’d basically end up recreating Hologram eventually. I think a much better approach is gradually supporting new use cases through a consistent Hologram development platform and ecosystem.
Anyway, really appreciate you sharing this. It’s good to know the vision resonates with what people are hoping for!
bartblast
Getting rid of the Node/npm dependency is actually a core part of the standalone Hologram effort. The plan is to vendor essential JS libraries and eliminate the need for npm/build tools altogether.
This will be part of v0.7.0, and it’ll apply to both the standalone and embedded (Phoenix-based) versions. So you’ll be able to work with just Elixir, HTML, and CSS - no JavaScript toolchain required (unless you need specific npm packages for JS interop).
Popular in Discussions
Other popular topics
Categories:
Sub Categories:
Forums
Popular Tags
- #ecto
- #liveview
- #troubleshooting
- #learning-elixir
- #deployment
- #library
- #erlang
- #testing
- #genserver
- #mix
- #absinthe
- #remote-other
- #otp
- #plug
- #how-to-question
- #macros
- #postgres
- #channels
- #elixirconf
- #exunit
- #discussion
- #code-sync
- #javascript
- #podcasts
- #onsite
- #dialyzer
- #docker
- #authentication
- #umbrella
- #full-time-contract
- #podcasts-by-brainlid
- #ecto-query
- #elixir-ls
- #phoenix_html
- #iex
- #blog-post
- #graphql
- #genstage
- #ai
- #websockets
- #supervisor
- #elixirconf-us
- #advent-of-code
- #distillery
- #processes
- #forms
- #api
- #metaprogramming
- #security
- #hex









