<%= turbo_frame_tag dom_id(@snip), data: { turbo_action: "replace" } do %>
<%= render "snips/snip", snip: @snip %>
<% end %>
When replacing DOM chunks, morphing reduces flicker and preserves focus/selection. If you enable morphing, prefer server-rendered HTML that’s stable and keyed. It’s a subtle but meaningful quality improvement.