Skip to main content

Streamlit - Sidemenu

A streamlit component to implement collapsible menu on st_sidebar. Currently only child level, does not support grand-child level or lower level descendents.

Installation

pip install streamlit-sidemenu

Usage

Refer to this file for example usage.

Custom Styling

You can customize the menu styling from the example below (which is the default styling). Pass the customized style into the component styles argument.

styles = """
body {
  margin: 0;
}

#app {
  margin: 0;
}

/* Fixed sidenav, full height */
.sidenav {
  font-family: Arial;
  height: 100%;
  width: 100%;
  position: fixed;
  z-index: 1;
  top: 0;
  left: 0;
  background-color: #111;
  overflow-x: hidden;
  /* padding-top: 20px; */
}

/* Style the sidenav links and the dropdown button */
.sidenav a, .dropdown-btn {
  padding: 6px 8px 6px 16px;
  text-decoration: none;
  font-size: 20px;
  color: #818181;
  display: block;
  border: none;
  background: none;
  width:100%;
  text-align: left;
  cursor: pointer;
  outline: none;
}

/* On mouse-over */
.sidenav a:hover, .dropdown-btn:hover {
  color: #f1f1f1;
}

/* Main content */
.main {
  margin-left: 200px; /* Same as the width of the sidenav */
  font-size: 20px; /* Increased text to enable scrolling */
  padding: 0px 10px;
}

/* Add an active class to the active dropdown button */
.sidenav a.selected {
  background-color: green;
  color: white;
}

/* Dropdown container (hidden by default). Optional: add a lighter background color and some left padding to change the design of the dropdown content */
.dropdown-container {
  display: none;
  background-color: #262626;
  padding-left: 8px;
}

/* Optional: Style the caret down icon */
.fa-caret-down {
  float: right;
  padding-right: 8px;
}
"""

.pypirc File

Place the file in $HOME / ~ directory

[distutils]
index-servers =
  pypi
  testpypi

[pypi]
username = __token__
password = pypi-xxx

[testpypi]
username = __token__
password = pypi-yyy
repository = https://test.pypi.org/legacy/

Frontend Notes

npm 6.x

cd <component_name_vanilla>
npm init vite@latest frontend --template vanilla
cd <component_name_vue>
npm init vite@latest frontend --template vue

npm 7+

cd <component_name>
npm init vite@latest frontend -- --template vanilla
cd frontend
npm i streamlit-component-lib

take note of vite.config.js

Metadata

Release files for streamlit-sidemenu 0.0.4

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for streamlit-sidemenu 0.0.4
File Size Uploaded
streamlit_sidemenu-0.0.4.tar.gz 62.6 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for streamlit-sidemenu 0.0.4
File Interpreter ABI Platform
streamlit_sidemenu-0.0.4-py3-none-any.whl Python 3 none any Details

Total release size: 130.2 kB

Release files / streamlit_sidemenu-0.0.4.tar.gz

Download URL streamlit_sidemenu-0.0.4.tar.gz
Size 62.6 kB
Tags Source
SHA-256 checksum
How to use checksums
6bd1e65e26cddfa511f90bd4aa054a16164ffc42af509ea69ffc545108b95d55
BLAKE2b-256 checksum
How to use checksums
eb2ebc403b73e4b09ab5215ee40fe06445052b2aa4a69b2ec4624279e17e8797
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.4.2 importlib_metadata/4.8.1 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.8.5

Release files / streamlit_sidemenu-0.0.4-py3-none-any.whl

Download URL streamlit_sidemenu-0.0.4-py3-none-any.whl
Size 67.5 kB
Tags Python 3
SHA-256 checksum
How to use checksums
e96e031d841fb185b430cc373982d02514ae4babd1895ec58b4aab9493e0a92b
BLAKE2b-256 checksum
How to use checksums
851cc4a0684a8ddec49ba49bac54f301506dc699e737694c6b454aa29d4df13e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.4.2 importlib_metadata/4.8.1 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.8.5

Release history Release notifications | RSS feed

This release

0.0.4 This release

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page