Skip to main content
Pre-release

This release is a pre-release and may not be stable for production use.

foliplus

Preview

foliplus: the missing piece between "see the map" and "use the map". GeoPandas handles data, Folium renders it, foliplus brings it to life.

Package Version Supported Python Tests Codecov Documentation

Scope

Layer data passed to foliplus is read-only: no editing, upload, or deletion.

Data processing happens upstream. foliplus handles the map, not the data.

Features

Control Description
📷 ExportControl Capture a specific area of the map and export it as an image.
🖥️ FullscreenControl Fullscreen toggle with auto-hide for other controls.
🔥 HeatmapControl H3 hexbin heatmap with zoom-adaptive resolution and labeled hexagons.
🗂️ LayerControl Layer panel to organize, inspect, and zoom to map layers.
🎯 LocateControl Fly to the user's current position.
📏 MeasureControl Measure distances, areas, and circles; place geocoded markers; then edit by dragging nodes.
📐 ScaleControl Scale bar with metric units and optional zoom level display.
🔍 SearchControl Coordinate and address search via pluggable geocode providers.

Beyond Plugins

Traditional map component libraries treat each tool as an independent plugin. foliplus was designed as one system from the start:

  • Components communicate with each other, instead of working in isolation
  • Layers are managed centrally, instead of each tool owning its own stack
  • Conflicts are resolved automatically, instead of tools interfering with each other
  • Third-party components can plug into the system, instead of being locked out

Built-in Coordination

Layer-producing tools register their canvas or layer through LayerControl, which manages z-order, visibility, and lifecycle centrally. This means they share a single layer stack — no z-index clashes, no orphaned DOM elements.

On top of this shared layer foundation, tools coordinate further:

  • While measuring, search and locate are blocked to prevent map interaction conflicts
  • During export, measurement pauses, heatmap renders in full resolution, and layer order is synced for a complete screenshot
  • When a layer is removed from the layer panel, the component that owns it (e.g. measurement) auto-cleans its state
  • When layers change, the heatmap refreshes automatically

All of this happens without manual wiring — foliplus handles it internally.

Compatibility

Requires folium>=0.14.0. Leaflet is not a Python dependency — the TypeScript controls run against the Leaflet Folium injects into the page.

CI runs the full suite on Folium's Leaflet (1.9.3) and a bring-up smoke on Leaflet 1.0.0 for pages that load a different pin.

Metadata

Release files for foliplus 0.4.0rc1

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

Source distribution (sdist)

Source distribution for foliplus 0.4.0rc1
File Size Uploaded
foliplus-0.4.0rc1.tar.gz 176.0 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for foliplus 0.4.0rc1
File Interpreter ABI Platform
foliplus-0.4.0rc1-py3-none-any.whl Python 3 none any Details

Total release size: 358.0 kB

Release files / foliplus-0.4.0rc1.tar.gz

Download URL foliplus-0.4.0rc1.tar.gz
Size 176.0 kB
Tags Source
SHA-256 checksum
How to use checksums
787db6603623c506d053fe745db6bf4c19c4a08e128d0bcb02c27eb39bd8288c
BLAKE2b-256 checksum
How to use checksums
305ffa19adf7307c732eccd738a91bde95ae123950b3d4f9926bcab74337ce93
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.13

Release files / foliplus-0.4.0rc1-py3-none-any.whl

Download URL foliplus-0.4.0rc1-py3-none-any.whl
Size 181.9 kB
Tags Python 3
SHA-256 checksum
How to use checksums
8ab4144a04d9813b0b3f18a2a4fcb643d637c5f63c9d8c21e59375773b7bf65a
BLAKE2b-256 checksum
How to use checksums
7ff01b55bfb2b71082665b1d8eaf0306a0e01eac3e82541f1137b4f2c813f990
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.13

Release history Release notifications | RSS feed

0.4.0

2 release files

This release

0.4.0rc1 This release

2 release files

0.3.1

2 release files

0.2.0

2 release files

0.1.0

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