skillfed

streamlit-extras

A community-driven collection of useful Streamlit components and utilities that extend Streamlit's functionality.

streamlit-extras v1.6.0 496.1K downloads/30d#6,338 on PyPI972
Permissive license Apache-2.0 Active released

What it is and what it does

streamlit-extras is a community-driven library that packages reusable UI components and utility functions designed to work with Streamlit. It fills gaps in Streamlit's standard widget set by offering pre-built extras that developers can import and use directly in their apps. The library depends on streamlit and plotly, and is distributed as a pure Python wheel with no compiled dependencies.

Developers use it to avoid reimplementing common UI patterns and interactive elements across multiple Streamlit projects. Each extra is a self-contained piece of code addressing a specific UI or utility need—like the stoggle component shown in the documentation, which creates a clickable toggle for revealing hidden content. The library is actively maintained and accepts community contributions via pull requests.

Use it for:

  • Add interactive toggle components to reveal/hide content sections in Streamlit dashboards.
  • Reuse pre-built UI patterns across multiple Streamlit applications without duplicating code.
  • Extend Streamlit's visualization capabilities by combining extras with plotly charts.
  • Build data exploration interfaces with custom utility functions from the extras collection.
  • Contribute and share custom Streamlit components with the community via the library.

Worth the install?

AI-flagged interpretation of the facts on this page — verify before relying

Provides a collection of reusable UI components and utilities that extend Streamlit's built-in functionality for building interactive web applications.

Yes. Low installation friction, active maintenance, permissive license, no known vulnerabilities, and a straightforward dependency tree (streamlit + plotly) make this a safe addition to Streamlit projects. Install it if you regularly build Streamlit apps and want to avoid reinventing common UI patterns.

Install

streamlit-extras on PyPI

pip

pip install streamlit-extras

uv

uv add streamlit-extras

poetry

poetry add streamlit-extras

Installing streamlit-extras

Before you install

Low friction installation as a pure Python wheel. Actively maintained with recent commits and a moderate community presence (972 stars). Last release was 91 days ago.

License in practice

Apache-2.0 permissive license allows commercial and private use with minimal restrictions, making it safe to incorporate into most projects.

Quickstart

pip install streamlit-extras

from streamlit_extras.stoggle import stoggle

stoggle(
    "Click me!",
    """🥷 Surprise! Here's some additional content""",
)

Requires Python >=3.10 and streamlit as a runtime dependency.

Verify before relying

  • Whether all extras are documented and discoverable in the referenced documentation.
  • Performance characteristics when using multiple extras in a single Streamlit app.
  • Compatibility with specific Streamlit versions beyond the current release.

Package facts

License Apache-2.0 (permissive)
Python support supports the current Python release (>=3.10)
Install friction low — pure-Python wheel
Runtime dependencies 2 — plotly, streamlit
Maintenance actively maintained — 91 days since the last release
Last repo commit
First released
Downloads 496,083/month — #6,338 on PyPI (30-day window, as of 2026-08-14)
Known vulnerabilities none known (OSV.dev, checked 2026-08-14)

Evidence: streamlit_extras-1.6.0-py3-none-any.whl

Keywords: data, python, streamlit, ui

Tags

streamlit ui componentsstreamlit extras librarystreamlit utilitiesstreamlit widget extensionsstreamlit app componentsstreamlit ui helpersstreamlit custom widgets
streamlit-ecosystemui-componentsweb-framework

More Application Frameworks packages

fastapi

FastAPI is a Python web framework for building…

permissive · top 100 on PyPI

annotated-doc

Provides a way to document function parameters,…

permissive · top 100 on PyPI

textual

Textual is a Python framework for building…

permissive · top 100 on PyPI

typer

Typer builds command-line applications from…

permissive · top 1,000 on PyPI

mcp

Build and connect to Model Context Protocol…

permissive · top 1,000 on PyPI

Werkzeug

Werkzeug is a WSGI utility library providing…

permissive · top 1,000 on PyPI

streamlit

Streamlit transforms Python scripts into…

permissive · top 1,000 on PyPI

streamlit-card

A Streamlit component that renders interactive…

permissive · top 15,000 on PyPI

streamlit-sortables

Streamlit Sortables adds drag-and-drop sortable…

permissive · top 15,000 on PyPI

extra-streamlit-components

Provides additional UI components for Streamlit…

permissive · top 15,000 on PyPI

streamlit-code-editor

Embeds an interactive code editor component…

unclear · top 15,000 on PyPI

streamlit-antd-components

Provides Ant Design and Mantine UI components…

unclear · top 15,000 on PyPI

streamlit-vertical-slider

Adds a vertical slider widget to Streamlit apps…

unclear · top 15,000 on PyPI

streamlit-toggle-switch

Adds a customizable toggle switch component to…

unclear · top 15,000 on PyPI

streamlit-faker

Generates random fake data to populate…

unclear · top 15,000 on PyPI

extras

Provides three utility functions—try_import,…

permissive · top 15,000 on PyPI