back to home

opengeos / anymap-ts

A Python package for creating interactive maps with anywidget and mapping libraries using TypeScript

198 stars
25 forks
2 issues
TypeScriptPythonHTML

AI Architecture Analysis

This repository is indexed by RepoMind. By analyzing opengeos/anymap-ts in our AI interface, you can instantly generate complete architecture diagrams, visualize control flows, and perform automated security audits across the entire codebase.

Our Agentic Context Augmented Generation (Agentic CAG) engine loads full source files into context on-demand, avoiding the fragmentation of traditional RAG systems. Ask questions about the architecture, dependencies, or specific features to see it in action.

Source files are only loaded when you start an analysis to optimize performance.

Embed this Badge

Showcase RepoMind's analysis directly in your repository's README.

[![Analyzed by RepoMind](https://img.shields.io/badge/Analyzed%20by-RepoMind-4F46E5?style=for-the-badge)](https://repomind.in/repo/opengeos/anymap-ts)
Preview:Analyzed by RepoMind

Repository Overview (README excerpt)

Crawler view

anymap-ts A Python package for creating interactive maps with anywidget using TypeScript. Supports multiple mapping libraries including MapLibre GL JS, Mapbox GL JS, Leaflet, OpenLayers, DeckGL, Cesium, KeplerGL, and Potree. Supported Libraries | Library | Description | Use Case | |---------|-------------|----------| | **MapLibre GL JS** | Open-source vector maps | Default, general-purpose mapping | | **Mapbox GL JS** | Commercial vector maps | Advanced styling, 3D terrain | | **Leaflet** | Lightweight, mobile-friendly | Simple maps, broad compatibility | | **OpenLayers** | Feature-rich, enterprise | WMS/WMTS, projections | | **DeckGL** | GPU-accelerated | Large-scale data visualization | | **Cesium** | 3D globe | 3D Tiles, terrain, global views | | **KeplerGL** | Data exploration | Interactive data analysis | | **Potree** | Point clouds | LiDAR visualization | Features • Interactive maps in Jupyter notebooks • Bidirectional Python-JavaScript communication via anywidget • Drawing and geometry editing with maplibre-gl-geo-editor • Layer control with maplibre-gl-layer-control • Multiple basemap providers via xyzservices • Export to standalone HTML • TypeScript-based frontend for type safety and maintainability Installation From PyPI (when published) From conda-forge From source (development) Optional dependencies Quick Start MapLibre GL JS (Default) Mapbox GL JS Leaflet OpenLayers DeckGL Cesium (3D Globe) KeplerGL Potree (Point Clouds) Common Features Add Vector Data Map Navigation Export to HTML Environment Variables | Variable | Library | Description | |----------|---------|-------------| | | Mapbox, KeplerGL | Mapbox access token | | | Cesium | Cesium Ion access token | API Reference Map Classes | Class | Base Library | Key Features | |-------|--------------|--------------| | / | MapLibre GL JS | Vector tiles, drawing, layer control | | | Mapbox GL JS | 3D terrain, Mapbox styles | | | Leaflet | Lightweight, plugins | | | OpenLayers | WMS/WMTS, projections | | | DeckGL + MapLibre | GPU layers, aggregations | | | Cesium | 3D globe, terrain, 3D Tiles | | | KeplerGL | Data exploration UI | | | Potree | Point cloud visualization | Common Methods | Method | Description | |--------|-------------| | | Add a basemap layer | | | Add vector data (GeoJSON/GeoDataFrame) | | | Add GeoJSON data | | | Add XYZ tile layer | | | Fly to location | | | Fit map to bounds | | | Set layer visibility | | | Set layer opacity | | | Export to HTML | DeckGL-Specific Layers | Method | Description | |--------|-------------| | | Point visualization | | | Origin-destination arcs | | | Polylines | | | Polygons | | | Hexbin aggregation | | | Density heatmap | | | Grid aggregation | | | GeoJSON rendering | Cesium-Specific Methods | Method | Description | |--------|-------------| | | Enable terrain | | | Add 3D Tiles | | | Add imagery | | | Set camera position | Potree-Specific Methods | Method | Description | |--------|-------------| | | Load point cloud | | | Set max points | | | Add measurement | | | Add annotation | Examples See the folder for Jupyter notebooks demonstrating each library: • - MapLibre GL JS basics • - Mapbox GL JS with terrain • - Leaflet markers and GeoJSON • - OpenLayers and WMS • - DeckGL visualization layers • - Cesium 3D globe • - KeplerGL data exploration • - Potree point clouds Development Prerequisites • Python 3.10+ • Node.js 18+ • npm Setup Build Project Structure License MIT License - see LICENSE for details. Credits • MapLibre GL JS - Open-source maps • Mapbox GL JS - Vector maps • Leaflet - Lightweight maps • OpenLayers - Feature-rich maps • DeckGL - WebGL visualization • Cesium - 3D geospatial • KeplerGL - Data exploration • Potree - Point cloud viewer • anywidget - Widget framework