Is it possible to assign a pipeline (in the Phoenix sense) to Hologram routes?

Thanks for this, I had not seen this issue. Unsurprisingly Jose had a good idea of the problems to be solved long before I did :slight_smile:

I should clarify that I think there are two separate problems here:

  • The double render
  • The duplicated API paths for dead/live renders (e.g. plug pipeline and live_session)

The first is a performance problem which requires optimization. The double render can never be fully removed, only optimized away most of the time. And that’s okay, I think.

The second is a UX problem which is downstream of the way LiveView was designed: piece-by-piece on top of an existing framework. There is no reason to force developers to define this logic twice. Even if it has to be applied twice under the hood, I see no reason to leak that into the API. Especially in a security context, where mistakes are expensive!

IMO the second issue is much more egregious than the first. Maybe it can be fixed in LiveView, maybe not. But Hologram is a clean slate so this whole thing can be avoided.