Is it possible to remove icons from multipage setup or specify them not in the filename?

Hi Streamlit Community,

Love the new multipage apps functionality! Question on the formatting though - do you have to add the icon to the filename of the script? Is there a way to specify this from inside the script itself?

If you don’t specify an icon you get a pretty unattractive page symbol:

and if you do add an emoji to the filename it creates issues referencing the module in tests etc. as emojis are invalid characters. Am I missing something?


You don’t have to add an icon to the filename but if you don’t, you’ll get the standard page icon. I just played around with removing the page icons if this is helpful…I threw this at the end of my streamlit file.

from streamlit.components.v1 import html
js_remove_icons = """
    arr = document.querySelectorAll('[data-testid="stSidebarNav"] li a span:first-child')
    for (var i = 0; i < arr.length; i++) {arr[i].remove()}

    arr = document.querySelectorAll('[data-testid="stSidebarNav"] li a svg')
    for (var i = 0; i < arr.length; i++) {arr[i].remove()}
my_html = f"<script>{js_remove_icons}</script>"

Thanks for confirming, and cheers for sharing that script - though it didn’t seem to have any impact for me… I still have the page icons there and doesn’t seem to create any errors.