Skip to main content

A simple and elegant checkbox tree for Streamlit.

Project description

🐙 streamlit_tree_select

A simple and elegant checkbox tree for Streamlit. Build on react-checkbox-tree.

animated

Installation

streamlit-tree-select is distributed via. PyPi:

pip install streamlit-tree-select

Quickstart

Using streamlit-tree-select is as simple as importing tree_select and passing a list of nodes.

import streamlit as st
from streamlit_tree_select import tree_select

st.title("🐙 Streamlit-tree-select")
st.subheader("A simple and elegant checkbox tree for Streamlit.")

# Create nodes to display
nodes = [
    {"label": "Folder A", "value": "folder_a"},
    {
        "label": "Folder B",
        "value": "folder_b",
        "children": [
            {"label": "Sub-folder A", "value": "sub_a"},
            {"label": "Sub-folder B", "value": "sub_b"},
            {"label": "Sub-folder C", "value": "sub_c"},
        ],
    },
    {
        "label": "Folder C",
        "value": "folder_c",
        "children": [
            {"label": "Sub-folder D", "value": "sub_d"},
            {
                "label": "Sub-folder E",
                "value": "sub_e",
                "children": [
                    {"label": "Sub-sub-folder A", "value": "sub_sub_a"},
                    {"label": "Sub-sub-folder B", "value": "sub_sub_b"},
                ],
            },
            {"label": "Sub-folder F", "value": "sub_f"},
        ],
    },
]

return_select = tree_select(nodes)
st.write(return_select)

Properties

The tree select can be customized using the following parameters:

Property Type Description Default
nodes list A list containing tree nodes and their children. A need needs to include a label and a value. Furthermore, a list of children can be added. Further possible parameters: className (A class Name to add to the node, default None), disabled (Whether the node should be disabled, default False), showCheckbox (Whether the node should show a checkbox, default True), title (A custom title attribute for th node, default None). []
check_model str Specifies which selected nodes should be returned. Possible inputs: "all", "leaf". 'all'
checked list A list of selected nodes. []
direction str Specify the direction of the component. Left-to-right ('ltr') or right-to-left ('rtl'). 'ltr'
disabled bool If True, the component will be disabled and cannot be used. False
expand_disabled bool If True, nodes cannot be expanded. False
expand_on_click bool If True, nodes will be expanded by clicking on the labels. False
expanded list A list of expanded node values. []
no_cascade bool If True, toggling a parent node will not cascade its check state to its children. False
only_leaf_checkboxes bool If True, checkboxes will only be shown for leaf nodes. False
show_expand_all bool If True buttons for expanding and collapsing all parent nodes will appear in the tree. False

Returns

tree_select returns a dictionary containing the keys checked node values as well as expanded node values.

Property Type Description Default
checked list A list of expanded node values. []
expanded list A list of expanded node values. []

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_tree_select_dark-0.0.8.tar.gz (2.0 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

streamlit_tree_select_dark-0.0.8-py3-none-any.whl (1.1 MB view details)

Uploaded Python 3

File details

Details for the file streamlit_tree_select_dark-0.0.8.tar.gz.

File metadata

File hashes

Hashes for streamlit_tree_select_dark-0.0.8.tar.gz
Algorithm Hash digest
SHA256 74df5cc2e5eaee35c5f1ad82341ad8b411fba93533f6bf56e9142fc02b8472ee
MD5 6fe327604107bdeaa83b5cb1f6c30737
BLAKE2b-256 302b18075e1b6b29b60a424da9d9f15447254b66eb14e25c2e5fbd7b4a6323a2

See more details on using hashes here.

File details

Details for the file streamlit_tree_select_dark-0.0.8-py3-none-any.whl.

File metadata

File hashes

Hashes for streamlit_tree_select_dark-0.0.8-py3-none-any.whl
Algorithm Hash digest
SHA256 0a4b7efa87020b6ab4f30b9938038a0d246138a332ae6dfa972155e34d2b6c02
MD5 6c781c51a232649927cfea3905f65e95
BLAKE2b-256 5bb8135dc678ccc8b92ac97526d69dcceeec5f4434947b0cb8359836db93989a

See more details on using hashes here.

Supported by

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