streamlit-option-menu is a simple Streamlit component that allows users to select a single item from a list of options in a menu.
It is similar in function to st.selectbox(), except that:
- It uses a simple static list to display the options instead of a dropdown
- It has configurable icons for each option item and the menu title
It is built on [streamlit-component-template-vue](https://github.com/andfanilo/streamlit-component-template-vue), styled with [Bootstrap](https://getbootstrap.com/) and with icons from [bootstrap-icons](https://icons.getbootstrap.com/)
## Installation
```
pip install streamlit-option-menu
```
## Parameters
The `option_menu` function accepts the following parameters:
- menu_title (required): the title of the menu; pass None to hide the title
- options (required): list of (string) options to display in the menu; set an option to "---" if you want to insert a section separator
- default_index (optional, default=0): the index of the selected option by default
- menu_icon (optional, default="menu-up"): name of the [bootstrap-icon](https://icons.getbootstrap.com/) to be used for the menu title
- icons (optional, default=["caret-right"]): list of [bootstrap-icon](https://icons.getbootstrap.com/) names to be used for each option; its length should be equal to the length of options
- orientation (optional, default="vertical"): "vertical" or "horizontal"; whether to display the menu vertically or horizontally
The function returns the (string) option currently selected
## Example
```
import streamlit as st
from streamlit_option_menu import option_menu
with st.sidebar:
selected = option_menu("Main Menu", ["Home", 'Settings'],
icons=['house', 'gear'], menu_icon="cast", default_index=1)
selected
# horizontal Menu
selected2 = option_menu(None, ["Home", "Upload", "Tasks", 'Settings'],
icons=['house', 'cloud-upload', "list-task", 'gear'],
menu_icon="cast", default_index=0, orientation="horizontal")
selected2
```
Raw data
{
"_id": null,
"home_page": "https://github.com/victoryhb/streamlit-option-menu",
"name": "streamlit-option-menu",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.6",
"maintainer_email": null,
"keywords": null,
"author": "Victor Yan",
"author_email": "victoryhb@163.com",
"download_url": "https://files.pythonhosted.org/packages/5e/27/72dc451cdaef1714fd0d75cc430e50a06c12c9046295fdf1f94af1b766eb/streamlit-option-menu-0.4.0.tar.gz",
"platform": null,
"description": "streamlit-option-menu is a simple Streamlit component that allows users to select a single item from a list of options in a menu.\nIt is similar in function to st.selectbox(), except that:\n- It uses a simple static list to display the options instead of a dropdown\n- It has configurable icons for each option item and the menu title\n\nIt is built on [streamlit-component-template-vue](https://github.com/andfanilo/streamlit-component-template-vue), styled with [Bootstrap](https://getbootstrap.com/) and with icons from [bootstrap-icons](https://icons.getbootstrap.com/)\n\n## Installation\n```\npip install streamlit-option-menu\n```\n\n## Parameters\nThe `option_menu` function accepts the following parameters:\n- menu_title (required): the title of the menu; pass None to hide the title\n- options (required): list of (string) options to display in the menu; set an option to \"---\" if you want to insert a section separator\n- default_index (optional, default=0): the index of the selected option by default\n- menu_icon (optional, default=\"menu-up\"): name of the [bootstrap-icon](https://icons.getbootstrap.com/) to be used for the menu title\n- icons (optional, default=[\"caret-right\"]): list of [bootstrap-icon](https://icons.getbootstrap.com/) names to be used for each option; its length should be equal to the length of options\n- orientation (optional, default=\"vertical\"): \"vertical\" or \"horizontal\"; whether to display the menu vertically or horizontally\n\nThe function returns the (string) option currently selected\n\n## Example\n```\nimport streamlit as st\nfrom streamlit_option_menu import option_menu\n\nwith st.sidebar:\n selected = option_menu(\"Main Menu\", [\"Home\", 'Settings'], \n icons=['house', 'gear'], menu_icon=\"cast\", default_index=1)\n selected\n\n# horizontal Menu\nselected2 = option_menu(None, [\"Home\", \"Upload\", \"Tasks\", 'Settings'], \n icons=['house', 'cloud-upload', \"list-task\", 'gear'], \n menu_icon=\"cast\", default_index=0, orientation=\"horizontal\")\n selected2\n```\n\n\n",
"bugtrack_url": null,
"license": null,
"summary": "streamlit-option-menu is a simple Streamlit component that allows users to select a single item from a list of options in a menu.",
"version": "0.4.0",
"project_urls": {
"Homepage": "https://github.com/victoryhb/streamlit-option-menu"
},
"split_keywords": [],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "fd522f525ad4262dc83d67297f69ec5afcee1438b9e9ae22aa318396725ddbed",
"md5": "f94be8209ca1a41d6e85608502b2a55d",
"sha256": "a55fc7554047b6db371595af2182e435b8a2c715ee6124e8543685bd4670b07e"
},
"downloads": -1,
"filename": "streamlit_option_menu-0.4.0-py3-none-any.whl",
"has_sig": false,
"md5_digest": "f94be8209ca1a41d6e85608502b2a55d",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.6",
"size": 829255,
"upload_time": "2024-10-09T14:50:59",
"upload_time_iso_8601": "2024-10-09T14:50:59.707758Z",
"url": "https://files.pythonhosted.org/packages/fd/52/2f525ad4262dc83d67297f69ec5afcee1438b9e9ae22aa318396725ddbed/streamlit_option_menu-0.4.0-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "5e2772dc451cdaef1714fd0d75cc430e50a06c12c9046295fdf1f94af1b766eb",
"md5": "e6c03badfd91039dbd292550d79655eb",
"sha256": "48ec69d59e547fa2fa4bfae001620df8af56a80de2f765ddbb9fcbfb84017129"
},
"downloads": -1,
"filename": "streamlit-option-menu-0.4.0.tar.gz",
"has_sig": false,
"md5_digest": "e6c03badfd91039dbd292550d79655eb",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.6",
"size": 827290,
"upload_time": "2024-10-09T14:51:01",
"upload_time_iso_8601": "2024-10-09T14:51:01.685852Z",
"url": "https://files.pythonhosted.org/packages/5e/27/72dc451cdaef1714fd0d75cc430e50a06c12c9046295fdf1f94af1b766eb/streamlit-option-menu-0.4.0.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-10-09 14:51:01",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "victoryhb",
"github_project": "streamlit-option-menu",
"travis_ci": false,
"coveralls": false,
"github_actions": false,
"lcname": "streamlit-option-menu"
}