However, despite all its glory, writing a Streamlit UI is only a part of the story. You still need to:
Now, it’s not that using something like Flask to write a backend, or deploying on Heroku, or figuring out how to setup auth is that difficult on its own. It is more that it leads you to become an infrastructure engineer building and maintaining a stack, or waiting for someone else to do it. In my experience, that leads to data apps that never leaves the laptop, nor do they get improved or maintained, and most don’t even get built.
After years of seeing and feeling this on a daily basis, we decided to start a company and create Databutton to make it truly easy to build analysis powered tools.
Databutton is an all online workspace where you can iterate right in your browser and see updates live with hot-reloading. When you are happy with your app, you can publish and share it with the click of a button. Thus,
And yes, the basics are in order. You can use any Python package you want, code is versioned, and there is a secrets store to manage your secrets.
When working with live data, you typically don’t want your users to sit in the app and wait while you fetch tons of evens and do processing on them. Instead you want that processing to happen continuously and be ready by the time your users need the results.
In Databutton, you can write and schedule python jobs just as easily as writing Streamlit apps.
Being able to schedule code is also a powerful way to reach your users and provide insight. In practise, people rarely sit and watch your app all day long, or even daily. Through writing Jobs in Databutton however, you can instead send out notifications on email, Slack, Discord, or wherever else your users are. That enables you to get people attention and pull them into the app when they should.
Databutton is currently in free closed beta and we would love it if you check it out and provide candid feedback!