I hope someone answers your question but I suppose another option would be to just go whole hog and convert everything from LiveView to Hologram. I think @olivermt did this recently. He may be able to share more.
Mixing them on the same page isn’t technically possible today, and even if it were, I wouldn’t do it - two runtimes competing for one DOM just doesn’t make sense, and there’s no event bridge between them by design. The good news is that converting LiveView to Hologram is a far shorter hop than the React port @olivermt did - both are declarative Elixir, so it’s mostly a mechanical translation, and AI tools handle it really well (honestly one of the best use cases for them). During the migration you can keep both routers side by side and convert page by page.
@olivermt What made you take the risk? Wanna share some bits and pieces?
@bartblast I see. I kinda hoped that Hologram would support an interactive island approach either via phx-update="ignore" for LiveView codebases or just via plain islands for static Phoenix views. Would be awesome to build transpiled colocated JS using Elixir
The colocated JS part is the step you get to skip entirely. You do not write JS with Hologram, you write Elixir and Hologram compiles it to run in the browser.
Which is also why mixing is a bad trade. Wiring two very different execution models together is a large amount of work for a small payoff, and converting a page gets you the same interactivity without the bridge.
Yeah, already in the short-term goals - coming soon!