Dash SPA: which parts are executed in browser which parts are executed in backend?

Dear all,
I am newbie for dash. I am wondering how dash works for single page application.
The whole app logic would be translated firstly to JavaScript and run totally in browser? Or some logic will run in browser, and some run in backend (e.g. callback runs in backend?)

Thank you for your help!

I think the one-line answer is that callbacks (that you’ve written in Python) run in the backend server, and pretty much everything else after page load is in the browser. But you do have the option of writing (in JavaScript) clientside callbacks that run in the browser.

Not sure what a good link to a longer description would be - the doc on sharing data between callbacks describes some of the consequences of them being run on the server:

For clientside callbacks:

1 Like

@davidharris
Thank you for the info!

Does the user need to implement any specific configurations for handling the separation of frontend and backend logic in Dash?

Not sure I understand exactly what you mean, but I think the answer is no, you don’t need to implement specific configurations. If you create the layout and write callbacks according to the spec, the Dash framework handles all the interaction between the client and server.

Depending on your setup you might need to sort out firewall rules to allow communication.