StSteroids v1.0.1 released!

Hi Streamlitters! :waving_hand:

About a year ago I shared StSteroids, a small framework I built to make larger Streamlit apps easier to maintain and develop in teams. Since then I’ve been using it extensively in real projects and recently released a new version with some major improvements.

Go check it out! @pypi

For those who didn’t see the original post:

StSteroids is a lightweight framework that adds structure on top of Streamlit for building larger applications.

The main ideas are:

  • :puzzle_piece: Reusable components – encapsulate UI and logic

  • :compass: Layouts – define how components are rendered on a page

  • :shuffle_tracks_button: Routing – simple navigation between pages

  • :high_voltage: Flows – event-driven logic for handling interactions

  • :brick: Separation of concerns – keep UI, logic, and navigation cleanly separated

What’s new in the latest version

This release contains a partial rewrite of the framework focused on simplicity, better developer ergonomics, and improved routing capabilities.

Some of the key improvements:

  • :sparkles: Reduced framework footprint – the internal architecture has been simplified to make the framework lighter and easier to work with.

  • :brain: More intuitive object creation – components and framework objects are now easier to instantiate and reason about.

  • :toolbox: Better editor and debugger support – improved typing and structure make development smoother when working with IDEs and debuggers.

  • :compass: Enhanced router system – the router now supports conditional routes directly in the framework, giving much more control over navigation and layout rendering.

  • :puzzle_piece: New component types – Fragment and Dialog replace the previous render_as parameter.

  • :stopwatch: New scheduling feature – flows can now schedule a run after the first rerun, which helps when updating component state before executing longer actions.

1 Like