A customizable tile component for Streamlit apps
Project description
Streamlit Tile Component
A customizable tile component for Streamlit apps that provides a button-like interface with a modern tile appearance.
Features
- Customizable appearance: Choose from multiple color themes, icons, and dimensions
- Material Icons integration: Use any Material Icons icon
- Responsive design: Built with Tailwind CSS for modern styling
- Interactive feedback: Hover and click animations
- Easy integration: Works seamlessly with Streamlit's component system
Usage
Basic Usage
import streamlit as st
from streamlit_tile import streamlit_tile
# Create a simple tile
clicked = streamlit_tile(
title="My Tile",
description="This is a sample tile",
icon="home",
color_theme="blue"
)
if clicked:
st.write("Tile was clicked!")
Advanced Usage
import streamlit as st
from streamlit_tile import streamlit_tile
# Create a dashboard with multiple tiles
col1, col2, col3 = st.columns(3)
with col1:
users_clicked = streamlit_tile(
title="Users",
description="Manage application users and permissions",
icon="people",
color_theme="blue",
height=250,
width=300,
key="users_tile"
)
with col2:
settings_clicked = streamlit_tile(
title="Settings",
description="Configure application preferences",
icon="settings",
color_theme="yellow",
height=250,
width=300,
key="settings_tile"
)
with col3:
reports_clicked = streamlit_tile(
title="Reports",
description="Generate and view various reports",
icon="description",
color_theme="indigo",
height=250,
width=300,
key="reports_tile"
)
# Handle tile clicks
if users_clicked:
st.info("Users section accessed!")
if settings_clicked:
st.info("Settings section accessed!")
if reports_clicked:
st.info("Reports section accessed!")
Parameters
| Parameter | Type | Default | Description |
|---|---|---|---|
title |
str | "Default Title" | The title text displayed on the tile |
description |
str | "Default description" | The description text displayed on the tile |
icon |
str | "home" | Material Icons icon name (e.g., 'people', 'settings', 'chat') |
color_theme |
str | "blue" | Color theme: 'blue', 'red', 'yellow', 'indigo', 'green', 'purple' |
height |
int | 200 | Height of the tile in pixels |
width |
int | 300 | Width of the tile in pixels |
key |
str | None | Unique key for the component (required for multiple tiles) |
License
This project is licensed under the MIT License.
Acknowledgments
- Built using the Streamlit Component Template
- Styled with Tailwind CSS
- Icons from Material Icons
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_tile-1.0.0.tar.gz
(402.7 kB
view details)
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file streamlit_tile-1.0.0.tar.gz.
File metadata
- Download URL: streamlit_tile-1.0.0.tar.gz
- Upload date:
- Size: 402.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.1
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
f5ac62cf8b3e0b8a33e95eb97929e724aa935e5d075313ec6ee749a09b8cbb4c
|
|
| MD5 |
be9e96bac1643a905ff0eb4409559918
|
|
| BLAKE2b-256 |
5e1be587b2d018c225b2843d5d02af0f4b71fc4015bc55a69ffd957feaebe566
|
File details
Details for the file streamlit_tile-1.0.0-py3-none-any.whl.
File metadata
- Download URL: streamlit_tile-1.0.0-py3-none-any.whl
- Upload date:
- Size: 405.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.1
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
65559184763b96d6d9a3435f4cc3dd916083bf63d9477d02c95a94842b1273f8
|
|
| MD5 |
aec1c0c9cd536b99e296c334196db00a
|
|
| BLAKE2b-256 |
853607f362b0e12cbd04d7368462ff05deb7c1217dc150853ba5ade301735475
|