So I am using Streamlit for the first time in a project, so I am not sure how to approach the following task with this framework. I have red up on the authentication mechanism and I am pretty sure this should be possible. However, any suggestions, best practices and further resources would be great
This is the project:
Multipage Dashboard with Login for multiple Users
Basically a financial dashboard for different companies
The architecture and visuals of the Dashboard remains the same for all companies
Based on the Login from the company the script shall fetch data from the specific company from a DB
If you have also have any suggestions how to best set up a DB with Streamlit (relational, NoSQL, Excel files), let me know. Thank you!
Things to keep in mind when developing a streamlit app.
Main concept - especially the data flow, the prime directive is “streamlit reruns the code from top to bottom whenever there are changes in the object states” such as changing the value of a widget or event such as clicking a button. There is an upcoming streamlit version on the roadmap that will change that prime directive in a good way where developers can control which function to rerun.
Session State - this manages our variables, there is fun in abstraction
Secrets Management - this manages secrets of your app such as api keys, secret tokens, passwords or something that you don’t want the users to know.
Button behavior - be careful on multiple layers of button usage, use the callback as much as possible.