Version 1.27.0


  • :sparkles: Introducing st.scatter_chart — a new, simple chart element to build scatter charts Streamlit-y fast and easy! See our documentation.
  • :link: Introducing st.link_button! Want to open an external link in a new tab with a bit more pizazz than a plain-text link? Check out our documentation to see how.
  • :running_man: Announcing the general availability of st.rerun, a command to interrupt your script and trigger an immediate rerun.

Notable Changes

Other Changes

  • :bug: Bug fix: st.multiselect now shows a correct message when no result matches a user’s search (#7205, #7116).
  • :beetle: Bug fix: st.experimental_user now defaults to (#7219, #7215).
  • :ant: Bug fix: st.slider labels don’t overlap when small ranges are selected (#7221, #3385).
  • :honeybee: Bug fix: Type-checking correctly identifies all string types to avoid hashing errors (#7255, #6455).
  • :lady_beetle: Bug fix: JSON is parsed with JSON5 to avoid errors from null values when using st.pydeck_chart (#7256, #5799).
  • :spider: Bug fix: Identical widgets on different pages are correctly interpreted by Streamlit as distinct (#7264, #6146).
  • :butterfly: Bug fix: Visual tweaks to widgets for responsive behavior (#7145).
  • :cockroach: Bug fix: SVGs are accurately displayed (#7183, #3882).
  • :fly: Bug fix: correctly updates with changes to start_time (#7257, #7126).
  • :microbe: Bug fix: Additional error handling was added to st.session_state (#7280, #7206).
  • :mosquito: Bug fix: correctly refreshes with new data (#7307, #7294).
  • :scorpion: Bug fix: The decorative app header line is no longer covered by the sidebar (#7297, #6264).
  • :cricket: Bug fix: st.code no longer triggers a CachedStFunctionWarning (#7306, #7055).
  • :spider_web: Bug fix: st.download_button no longer resets with different data (#7316, #7308).
  • :snail: Bug fix: Widgets consistently recognize user interaction while a page is still running, with or without fastRerun enabled (#7283, #6643).
  • :lizard: Bug fix: st.tabs was improved to better handle and render conditionally appearing tabs (#7287, #7310, #5454, #7040).


With this new version, please give us the markdown to remove the vertical space at the top of the sidebar.

I don’t think anyone appreciates this initial space at the top in either the sidebar or the main content area.




Found it: Just adding it here in case anyone needs it:

st.markdown(" <style> div[class^='st-emotion-cache-10oheav'] { padding-top: 0rem; } </style> ", unsafe_allow_html=True)

Adjust 0rem value as needed.



Love the new st.link_button and the long awaited st.rerun… but I cannot be happier about two of the notable changes: empty state for every input and the st.download_button not opening new tab! :star:

Two questions for the future
I look into the roadmap, but I can’t see anything related to these two features for the st.date_input

  1. Localization (optional languages)
  2. Week starting from monday (as an option to the sunday-first week)

New bug I encountered: renaming a tab after using st.rerun get the script to the first tab.
Link to the topic HERE.

As always, love the framework and his magic, keep up the awesome work! :heart:


Hello Streamlit community!

I’d like to suggest an idea inspired by YouTube’s model, to allow app creators to monetize their applications

App Access Payment Gateway

  1. Payment Structure: Allow users to choose to pay for different periods of access to an application.
    This could be:
  • One day
  • One week
  • 15 days
  • One monthFor instance, if someone wishes to access a specific application, they might do so by paying, say, $0.50 for one day of access.
  1. Facilitating Monetization: Now that Streamlit, under the Snowflake umbrella, has the capability to handle complex infrastructures, it could take care of the ‘heavy lifting’. This includes but is not limited to:
  • Database optimization
  • Transaction management and payment security
  • Maintaining the already efficient framework that allows us to deploy Python apps on the web
  1. Revenue Sharing: Streamlit could take a percentage of the revenues generated from user payments, much like how YouTube does with ads. The remainder would naturally go to the app creator.

I believe this suggestion would not only benefit app creators looking to monetize their work but also assist Streamlit in generating additional income, thereby strengthening the entire ecosystem.

What are your thoughts? I’m open to feedback and further developing this idea with everyone’s input.

Thanks Fer,


This topic was automatically closed 180 days after the last reply. New replies are no longer allowed.