Hotwire turbo streams, working with php, python

Hello,
I have used turbo with a php based backend some time ago, and it was working okay in my opinion.
Today I saw the video featuring a real-time chat app, and I wanted to know, wether this also works with a php or python based backend?

Thanks and kind regards

1 Like

Yes it definitely should!
Turbo is completely backend agnostic so all of its concepts should work regardless of the backend choices you make.

One of the core pieces is allowing your backend to register a new mime type to process forms. Other frameworks can take inspiration from the turbo_rails gem. Take a look at how rails registers a new mime type here.

The turbo-rails gem uses Rails’ queue framework, ActiveJob in order to process broadcasts to the frontend via web sockets. Take a look here.

These background jobs send updates to the front end via web sockets which insert turbo streams to the dom. They then get processed by Turbo (the js library) and content gets modified in the dom.

I also found a couple of implementations. I haven’t used them but that seems like a good place to start
Django

Laravel

1 Like

Thank you for your detailed answer! I will have a look at them.