TMG · TechMaven Geospatial
ArcGIS Experience Builder · Custom WidgetsA portfolio of client-first custom widgets that bring DuckDB analytics, cloud lakehouse, real-time IoT, earth observation, indoor 3D, and immersive AR directly into Experience Builder.
Slide deck · July 2026 · Audience: Esri buyers & GIS teams · Open the full site
Experience Builder is the most flexible web-GIS builder available. But connecting it to modern capabilities still means custom development every time:
Each gap = a new build, a new server, or a vendor lock-in.
Weeks-to-months of engineering for capabilities that are now table-stakes elsewhere — plus ongoing ops burden for the middleware each one needs.
Server-side processing moves sensitive data out of the browser, complicating GDPR / HIPAA / SOC 2, air-gapped, and government-sovereign commitments.
DuckDB-WASM, Assimp, FFmpeg, GDAL3, MapServer, and SpatiaLite — compiled to WebAssembly — do the processing in the browser. Most widgets need no backend.
OGC API Features, Mapbox Vector Tiles, STAC, IMDF, CoT, GTFS, Iceberg, Delta. Your data and services stay portable and vendor-neutral.
19 drop-in widgets that extend ExB — not replace it. Native integration with FeatureServers, SceneView, Calcite/Jimu UI, and the ArcGIS Maps SDK.
DuckDB Advanced Analytics · POI Search (250M+) · SpatiaLite · GeoPackage Tools · Browser GIS Service Loader (COG→WMS) · DuckDB Data Connector
Google BigQuery & Sheets · Data Lake & Lakehouse · Source.coop · STAC Explorer
DuckDB Real-Time Data Feeds — Kafka, WebSocket, GTFS, moving features
TAK Team Collaboration — blue-force tracking, geofences, emergency alerts
IMDF Indoor · 3D Model Converter · 3D Buildings Creation roadmap
AR CameraXR · FFmpeg Video · Street View & Oblique Launcher
17 available today · 2 on the roadmap (3D Buildings Creation, LLM Chatbot)
Data & Analytics
DuckDB-WASM and SpatiaLite/GDAL WASM run analytical workloads entirely client-side — no query server, no data movement.
A production-hardened DuckDB-WASM toolkit — the portfolio's flagship. Move data between FeatureServers and analytical formats, run SQL, bin into H3, geocode.
SQL-injection prevention, input validation, error boundaries, strict TypeScript, Jest coverage thresholds. Not prototype-grade.
Unified search across Overture (59M+), Foursquare (100M+), OSM, USGS GNIS, NGA GEOnet. Real-time MVT generation, bbox filtering, click-to-zoom.
Full SpatiaLite DB in-browser (spl.js WASM). Import many formats, edit features, run SQL + spatial tools, export. Offline & air-gapped friendly.
View/query/convert GeoPackage & Shapefile with NGA GeoPackage-JS and GDAL3 WASM. Bidirectional map↔table, up to 100k features.
MapServer compiled to WASM publishes real in-browser WMS/WFS from COG & GeoPackage. Pixel-level identify, metadata panel, SHA-256 integrity checks.
In-browser DuckDB-WASM + Python (Pyodide): ingest REST APIs, Excel, OGC API Features/Tiles, and remote files, then run spatial SQL or pandas and map the results — no backend.
Despite the repo name, the "SQL database" source is intentionally stubbed — browsers can't open RDBMS sockets. Live-database connectivity needs a customer-supplied proxy. The shipped, working capabilities are the five listed here.
Data Integration & Lakehouse
All four widgets share DuckDB-WASM + spatial extension. Cloud-native formats and open catalogs queried in-browser, results tiled straight to the ArcGIS map.
Real-Time & IoT
DuckDB Real-Time Data Feeds ingests streaming data into an in-browser DuckDB WASM database and renders it dynamically on the map.
Fleet, transit, and IoT dashboards without streaming infrastructure. Live situational awareness for a fraction of the usual ops cost.
Field Operations & Defense
Integrates ExB with a TAK Server over the CoT protocol for live blue-force tracking, shared markers, geofences, and one-click emergency alerts.
Public safety, defense coordination, search & rescue, emergency management, event security.
Indoor & 3D
View, navigate & author Apple IMDF floor plans. Round-trip to FeatureServer. Venue→building→floor hierarchy. Spec-compliance checks.
Convert 25+ formats (FBX, OBJ, IFC, glTF…) to GLB via Assimp WASM. Place on a SceneView with full pose control. Multi-scene model library.
Draw footprints and extrude multi-floor 3D buildings directly on a SceneView. Spec-complete; entering implementation.
Immersive & Mobile
Hands-free nav via Web Speech + MediaPipe gestures + WebXR/AR.js + DeviceOrientation. Accessibility-first; fully configurable.
Extract embedded GPS from drone/dashcam video (FFmpeg WASM). Plot origins; capture map recordings via MediaRecorder. Client-side only.
One-click launch into Google Street View, Bing Streetside & Bird's Eye 45°. Live map-center sync. No API keys.
| Layer | What runs where |
|---|---|
| Compute | DuckDB-WASM, Assimp, FFmpeg, GDAL3, MapServer, SpatiaLite — WebAssembly in the browser |
| Standards | OGC API Features, MVT, STAC, IMDF, CoT, GTFS, Iceberg, Delta |
| Esri integration | FeatureServers, SceneView, Calcite/Jimu UI, ArcGIS Maps SDK, WMS/WFS Layers |
| Optional backends | Node.js + Express (BigQuery/Sheets), TiTiler (configurable), TAK Server |
| Licensing | Apache-2.0 / MIT on widget source; commercial support & SLAs available |
Widgets compose cleanly in a single experience because they share this foundation.
| Path | Effort | Server | Time |
|---|---|---|---|
| Custom build | Weeks–months | New service | Months |
| TMG widget | Days config | None | Days–weeks |
Multiply across your 2–3 highest-value capabilities.
| Risk | Mitigation |
|---|---|
| Widget maturity varies across portfolio | Adopt production-hardened widgets first; treat roadmap items as future scope. |
| Browser compute limits on very large datasets | Widgets stream/filter (bbox, view extent, range requests); validate in pilot. |
| Third-party service dependencies | Configurable endpoints (custom TiTiler, STAC); Street View/Oblique uses public URLs (documented). |
| Vendor continuity | Apache-2.0 / MIT source is yours to maintain; commercial support is additive, not a dependency. |
Spec-complete; entering implementation. Draw footprints, extrude multi-floor 3D buildings on a SceneView (Pascal editor / WebGPU). Enterprise editing patterns (globalId concurrency, retries, ARIA, i18n).
Early development. Direction: natural-language map interaction, layer-aware answers, bring-your-own-model, optional backend proxy. Themes are directional, not commitments.
17 of 19 widgets available today. Both roadmap items welcome design-partner input before architecture locks.
| If your team… | Start with |
|---|---|
| Does spatial analytics / data science | DuckDB Advanced Analytics, SpatiaLite, POI Search, DuckDB Data Connector |
| Manages cloud data lakes / warehouses | Data Lake & Lakehouse, BigQuery & Sheets, Source.coop |
| Pulls from REST APIs / Excel / OGC services | DuckDB Data Connector |
| Operates IoT / fleet / transit | DuckDB Real-Time Data Feeds |
| Works in defense / public safety | TAK Team Collaboration, GeoPackage Tools |
| Does facilities / campus / indoor | IMDF Indoor, 3D Model Converter |
| Builds field / mobile apps | AR CameraXR, FFmpeg Video, Street View & Oblique |
| Uses earth-observation / imagery | STAC Explorer, Browser GIS Service Loader (COG→WMS) |
Map your top 2–3 use cases to the portfolio.
Guided walk-through against your data & an existing ExB app.
1–2 widgets, validate fit, performance, UX.
Adopt more widgets as use cases surface.
No big-bang migration. Each widget is a discrete, reversible decision.
Set per engagement. No invented price tiers here — request a quote tailored to your deployment.
Request a guided demo against your data and one of your ExB apps, or get licensing details for your team.
Widget portfolio · Executive summary · About TMG · Contact
© 2026 TMG / TechMaven Geospatial. ArcGIS™ and Experience Builder™ are trademarks of Esri. Apache-2.0 / MIT licensed widgets.