はじめに
※随時追加・更新します。
Streamlitは独自のコンポーネント(UIのパーツ)を作ることができます。
GitHub等で公開されているコンポーネントのうち、サクッとpipでインストールして使えそうなものをまとめました。
2024.06追記
標準で対応されたものについて追記、新しいものを追加。(その2も統合)
ネストレイアウト
2024.06追記
標準のコンポーネントで対応済み。st.columnsで2重までのネストができます。
https://docs.streamlit.io/develop/api-reference/layout/st.columns
pip install streamlit-nested-layout
テーブル
- フィルタの自動生成
pandasのDataFrameを読み込んでサイドバーに各列の実際の値をベースとしたフィルタを自動で生成してくれます。
pip install streamlit-pandas
- シンプルかつ多機能なテーブル
pip install streamlit-awesome-table
画像をボタンにする
※デモ
pip install streamlit-image-select
ドラッグアンドドロップできるリスト
pip install streamlit-sortables
タイムライン
pip install streamlit-timeline
ホバーで開くサイドバー
pip install streamlit-on-Hover-tabs
ダイアログ
2024.06追記
標準のコンポーネントで対応済み。(現時点では実験的とのこと)
st.experimental_dialog
https://docs.streamlit.io/develop/api-reference/execution-flow/st.dialog
pip install st-mui-dialog
画像比較(image-comparison)
バーを動かして2枚の画像を比較できるアレ
pip install streamlit-image-comparison
ナビゲーションバー(App Bar)
pip install -U hydralit
pip install streamlit-option-menu
2024.06追加
最近はこちらも人気
pip install streamlit-navigation-bar
カード
pip install streamlit-card
いいねボタン
pip install streamlit-text-rating
カプセル型のセレクター
※デモ
pip install streamlit-pills
トグルスイッチ
2024.06追記
標準のコンポーネントで対応済み。st.toggle。
https://docs.streamlit.io/develop/api-reference/widgets/st.toggle
pip install streamlit-toggle-switch
レーティング
pip install st-star-rating
ツリーセレクター
pip install st-ant-tree
チャット
2024.06追記
標準のコンポーネントで対応済み。st.chat_inputとst.chat_message
https://docs.streamlit.io/develop/api-reference/chat
pip install streamlit-chat
フロー作成
pip install barfi
2024.06追加 ReactFrowをStreamlitで使えるようにしたもの
pip install streamlit-react-flow
地図
pip install streamlit-folium
縦のスライダー
pip install streamlit-vertical-slider
2024.06追加
カルーセル
pip install streamlit-carousel
アバターアイコン
pip install streamlit-avatar
※以下の記事で作成したものです。
おわりに
Streamlit自体、Reactを利用して作られておりコンポーネントもReactベースで作れるようなので、近いうち何かしら作ってみようと思い