Modern frontend web components based on Bulma and Buefy for Streamlit.
Live demo at streamfy.streamlit.app
Install streamfy
:
pip install streamfy
Create a simple application app.py
:
import streamlit as st
import streamfy as sy
sy.carousel(items=[
"https://picsum.photos/id/1051/1230/500",
"https://picsum.photos/id/1052/1230/500",
"https://picsum.photos/id/1053/1230/500",
])
Run this application:
streamlit run app.py
A file with all components is available in examples/all.py:
Take a look at Buefy's documentation for a list of all properties and examples available.
Ensure you have Python 3.6+, Node.js, and npm installed.
Clone this repo and create a new Python virtual environment:
$ python3 -m venv venv # create venv
$ . venv/bin/activate # activate venv
$ pip install streamlit # install streamlit
Initialize and run the component frontend:
$ cd streamfy/frontend
$ npm install # Install npm dependencies
$ npm run serve # Start the Webpack dev server
From a separate terminal, run the Streamlit app:
$ . venv/bin/activate # activate the venv you created earlier
$ streamlit run streamfy/__init__.py # run the example
If all goes well, you should see something like this:
Modify the frontend code at streamfy/frontend/src/Streamfy.vue
and the Python code at streamfy/__init__.py
.