When toasts are appended via Turbo Streams, they should self-dismiss without extra wiring. I attach a Stimulus controller to the toast element that schedules removal after a delay (and allows manual close). This means the server only needs to render a toast partial; the behavior comes along automatically. It also avoids memory leaks: when Turbo removes the toast element, Stimulus disconnects cleanly. I keep the controller generic: it reads timeout from a data value and has a close action. This pattern is a great example of how I blend Hotwire: Turbo for delivery of HTML fragments, Stimulus for tiny interactive behavior. Together, you get a polished UX without a JS framework.