Managaing data for multiple users

Dear Dash team,

First I would like to thank you for creating this genuinely wonderful framework. I find it very useful and see much real application for it. Could I ask a question, please?

I want to create an application, which allows multiple users to log in with their own credentials and use a shared back end. The back end itself requires processing a relatively complex custom python object, which contains various dataframes, lists and several machine learning models.

I want every user to have their own dedicated place in memory, where they can (temporarily) persist their objects and data and have access to them respectively (deleting the information after logout could be considered too).

Can you please recommend what is the preferred way to do it with Dash (especially given that many of the objects are not directly json serializeable).

Thank you very much in advance and I am really looking forward to hearing from you soon!

Kind regards,
Kiril
London, UK

Hey Kiril,

I’m trying to do the same thing. Did you ever find a solution?

I’m looking into flask session management or firing an SNS event on the callback for the ‘login’ button which will identify users, then setting my layout as a function and reading from an SQS queue which is subscribed to the SNS event inside of the layout function to determine which user’s data to return.

I feel like there has to be a better way.

In case any one else comes across this, I found what I needed here: https://dash.plotly.com/authentication

The basic auth was what I was looking for, just need to build some functionality on top of it. Glad to see this wasn’t overlooked by the Dash team.