Streamlit-Folium seamlessly integrates the Folium mapping library into Streamlit applications, allowing users to render interactive geospatial visualizations. It provides both a bi-directional component, `st_folium()`, for enhanced user interaction and a static renderer, `folium_static()`. The library is actively maintained, with its current version 0.27.1 released on March 26, 2026, indicating a consistent release cadence.
pip install streamlit-foliumVerified import paths — ran on the pinned version, not inferred.
This example initializes a Folium map centered on the Liberty Bell, adds a marker, and then renders it in a Streamlit application using the `st_folium` component, which enables bi-directional interaction. The `st_data` variable captures interaction events from the map.
Use a `with` block: `with col: folium_static(m)`.
Migrate from `folium_static(m)` to `st_folium(m)` to leverage interactive features and pass data back to Streamlit.
Ensure `streamlit-folium` (and `folium`) are correctly installed in your deployment environment. Restart the app/terminal. Check for restrictive firewalls or proxy settings, especially in corporate networks.
Ensure your project uses Python 3.11 or newer to avoid compatibility issues.
Run `pip install folium streamlit-folium` to ensure both libraries are present and compatible. Verify your `requirements.txt` if deploying.
Wrap the component call in a `with` block for the layout element: `with col: folium_static(m)` or `with col: st_folium(m)`.
Try `pip install --upgrade streamlit-folium` to ensure all assets are correctly installed. Clear your browser cache or try a different browser. If deploying, check network configurations.
Check the `streamlit-folium` GitHub issues for specific fixes or workarounds. This often requires updating `streamlit-folium` or `folium` to a version with a patch, or adjusting how MarkerCluster is initialized.