Skip to main content

Small handy widgets for streamlit, e.g. download button which won't cause rerun, set page width

Project description

streamlit-ext

PyPI Latest Release streamlit-ext-demo

A small handy extension for streamlit, keep your widget values in url, and share it with your friends.

Use widget from stramlit-ext just as streamlit and pass a unique key to it!

example gif

import numpy as np
import pandas as pd

import streamlit as st
import streamlit_ext as ste

df = pd.DataFrame(np.random.rand(10, 5))


option = ste.selectbox(
    "A form will show up if you select less than 10",
    range(100),
    key="selectbox",
)

st.write("You selected:", option)

age = ste.slider("How old are you?", 0, 130, 25, key="slider1")
st.write("I'm ", age, "years old")

ste.download_button("Click to download data!", df, "YOUR_DF.xlsx")
ste.download_button("Click to download text!", b"text content", "YOUR_STRING.txt")

installation

pip install streamlit-ext

Usage

sync widgets' value with urls

When widgets value changes, the url synced and if you open the url in new tab, every value keeped.

Just import widgets from streamlit_ext, and give a specific key argument to it!

import streamlit as st
import streamlit_ext as ste

from datetime import time, datetime, date

option = ste.selectbox(
    "How would you like to be contacted?",
    range(100),
    key="selectbox",
)

st.write("You selected:", option)

d = ste.date_input("When's your birthday", date(2019, 7, 6), key="date_input")
st.write("Your birthday is:", d)

t = ste.time_input("Set an alarm for", time(8, 45), key="time_input")
st.write("Alarm is set for", t)

Download button which won't cause rerun

import streamlit as st
import streamlit_ext as ste

st.title('streamlit-ext')

ste.set_page_width("60em")

ste.download_button("Download", "Hello World".encode(), "hello.txt")

Set page width

import streamlit as st
import streamlit_ext as ste

st.title('streamlit-ext')

ste.set_page_width("60em")

st.write("a quick fox jump..."*100)

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

streamlit_ext-0.1.14.tar.gz (281.3 kB view details)

Uploaded Source

Built Distribution

streamlit_ext-0.1.14-py3-none-any.whl (10.3 kB view details)

Uploaded Python 3

File details

Details for the file streamlit_ext-0.1.14.tar.gz.

File metadata

  • Download URL: streamlit_ext-0.1.14.tar.gz
  • Upload date:
  • Size: 281.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.12.7

File hashes

Hashes for streamlit_ext-0.1.14.tar.gz
Algorithm Hash digest
SHA256 cec6047c95b6613ef73cfbc63042311a96b79e8889b2975a63e2141adc045bb7
MD5 f71937b6a703a15a053dda2d08eb58b3
BLAKE2b-256 371c6df57b6861544dbd1d01b8e591806b51b5e59acbedfe962150a4940ccacf

See more details on using hashes here.

File details

Details for the file streamlit_ext-0.1.14-py3-none-any.whl.

File metadata

File hashes

Hashes for streamlit_ext-0.1.14-py3-none-any.whl
Algorithm Hash digest
SHA256 cd8dfeedc6313da4309614d1256d48048345a4921f117bd82f36bcb728df6e48
MD5 5c0ead25eaa3a52b029989d05d7ebacb
BLAKE2b-256 b259b678ab33879bb6f8fe6d05cec82cd7ef76ac170562c90f6a3fa256d5a6c6

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page