Skip to content

#5921 Add geodata Workbench plugin#5922

Draft
pierrelambert wants to merge 12 commits into
redis:mainfrom
pierrelambert:feature/5921/geodata-workbench-plugin
Draft

#5921 Add geodata Workbench plugin#5922
pierrelambert wants to merge 12 commits into
redis:mainfrom
pierrelambert:feature/5921/geodata-workbench-plugin

Conversation

@pierrelambert
Copy link
Copy Markdown

@pierrelambert pierrelambert commented May 14, 2026

Closes #5921

What

Adds a bundled internal Workbench geodata plugin.

The plugin supports native Redis GEO commands with map, heatmap, and inspector views, and adds opt-in Redis Query Engine geodata visualizations for FT.SEARCH, FT.AGGREGATE, and FT.HYBRID when GEO or GEOSHAPE predicates are detected.

Key decisions:

  • Uses Leaflet for map rendering instead of custom map rendering.
  • Uses OpenStreetMap tiles by default.
  • This plugin loads OSM tiles by default; provider is configurable in public/config.json; fallback renders unavailable state.
  • RQE visualizations are not default for FT commands, so existing RediSearch result views remain primary.
  • Missing returned geospatial fields show guidance instead of fetching documents.

Dependencies / Policy Note

New runtime dependencies:

  • leaflet
  • leaflet.heat
  • leaflet.markercluster

Leaflet is used because it gives us proven map rendering, pan/zoom behavior, tile support, heatmaps, and marker clustering without building fragile custom map primitives. Leaflet is open-source, but maintainers should confirm both the dependency choice and the default external tile-provider policy before this ships.

Evidence

Manual validation was done with RedisInsight against Redis 8.6.2.

Dense native GEO heatmap, showing multiple clusters and density changes while zooming:

08-native-geosearch-heatmap-density-zoom

Native GEO clustered map:

07-native-geosearch-clustered-map

Native GEO map:

01-native-geosearch-map

RQE FT.SEARCH GEO map:

03-rqe-ft-search-geo-map

RQE FT.SEARCH GEOSHAPE map with OSM basemap:

04-rqe-ft-search-geoshape-map

Missing returned geo field guidance:

05-rqe-missing-returned-field-guidance

Plain FT.SEARCH idx "*" keeps the default non-geodata result view:

06-plain-ft-search-default-view

Testing

  • /opt/homebrew/bin/rtk npx yarn@1.22.22 lint
  • /opt/homebrew/bin/rtk npx yarn@1.22.22 test:cov --ci --silent
  • /opt/homebrew/bin/rtk npx yarn@1.22.22 --cwd redisinsight/api test:cov --ci --silent
  • /opt/homebrew/bin/rtk npx yarn@1.22.22 --cwd redisinsight/ui/src/packages/geodata test --coverage --coverageReporters=text
  • /opt/homebrew/bin/rtk npx yarn@1.22.22 --cwd redisinsight/ui/src/packages/geodata typecheck
  • /opt/homebrew/bin/rtk npx yarn@1.22.22 build:statics
  • OSS_STANDALONE_PORT=6379 /opt/homebrew/bin/rtk npm run test:chromium -- tests/main/workbench/geodata-plugin.spec.ts

Notes

Repo-wide yarn type-check:ui still fails in unrelated baseline files outside this geodata/plugin change. The changed geodata package typecheck passes.

@jit-ci
Copy link
Copy Markdown

jit-ci Bot commented May 14, 2026

Hi, I’m Jit, a friendly security platform designed to help developers build secure applications from day zero with an MVS (Minimal viable security) mindset.

In case there are security findings, they will be communicated to you as a comment inside the PR.

Hope you’ll enjoy using Jit.

Questions? Comments? Want to learn more? Get in touch with us.

@CLAassistant
Copy link
Copy Markdown

CLAassistant commented May 14, 2026

CLA assistant check
All committers have signed the CLA.

@pierrelambert
Copy link
Copy Markdown
Author

Maintainer note: this PR needs the AI-Made label. I tried to add it from the fork author account, but GitHub returned a permissions error for adding labels on redis/RedisInsight.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[Feature Request]:Visualize GEO and GEOSHAPE results in Workbench

2 participants