- Pros: Streamlit is well suited for fast prototyping. On top of being easy to understand and having a good documentation to get started, the real-time feedback when changing code allows for a fast turnaround. If you do not need a fully scalable application running with thousands of users, then putting a Streamlit application in production should not be a problem.
- Cons: The biggest strength of fast prototyping is also the biggest weakness, as customization is limited. The look and feel can only be customized to a certain degree.
- Use (Streamlit) if: you want a fast way of building applications and visualizations for your users, for example for a small internal data app.
- Alternatives: Dash and Shiny
Firebolt Streamlit Example: https://github.com/spinscale/firebolt-streamlit-demo
- Pros: The most used and well known notebook tool in the python ecosystem. Every python developer will likely know about and how to use Jupyter. Many projects use a jupyter notebook for demoing. Jupyter is omnipresent in the python ecosystem. There are dozens of integrations with other programming languages as well great charting integration. Prototyping with Jupyter is as fast as it gets. Anything is at the choice of the developer, there is no limitation on charting libraries or SDKs being used. As anything can be used, it is also easy to use machine learning libraries and presentation tools on top of your data.
- Cons: Not as eye-catching as other solutions. The stored data is not really easy to digest in versioning systems, which makes merging changes hard when several people work on the same notebook. Notebooks can contain sensitive information, which requires the author to ensure to read secrets from another location. It's also harder to create a web application out of a jupyter notebook than with other dashboarding tools.
- Use (Jupyter) if: you need a tool that everyone knows in the python space, Jupyter is a good idea. Same for presentations and demos that many people in your teams should understand easily, as the entry barrier is low.
- Alternatives: Take a look at Google Colab, Apache Zeppelin, Spyder, Voila or Panel.
Firebolt integration examples: