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-3.0.0.tar.gz
(402.4 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-3.0.0.tar.gz.
File metadata
- Download URL: streamlit_tile-3.0.0.tar.gz
- Upload date:
- Size: 402.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.1
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
09c46dc05db6e8041c52de80d5ee732ab8547c3f21fa079b46d5bc0855becaa5
|
|
| MD5 |
f6f13bf7eb607192595472f782388396
|
|
| BLAKE2b-256 |
df80eeb69cec6537a5b987eec4fbc201d24f302a582fd41fce5a2711492698d9
|
File details
Details for the file streamlit_tile-3.0.0-py3-none-any.whl.
File metadata
- Download URL: streamlit_tile-3.0.0-py3-none-any.whl
- Upload date:
- Size: 405.3 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 |
48ed71470a7bfad8063bcf9ae666e675b53b71b7732d594faa1f62a665fcb167
|
|
| MD5 |
650b549c0c2a6ee4885a9d9a4aea672c
|
|
| BLAKE2b-256 |
5c193a041a393a7f17b57f0c530dc1f431d8b4ff5d41468daa42d211273ff5a2
|