map3d v0.6.0
Una ciudad en 3D fotorrealista renderizada por map3d, con el editor de dibujo abierto encima

París Google Photorealistic 3D Tiles 48.8584° N · 2.2945° E

React 19 · three.js ≥ 0.160 · ESM + CJS + types

Cartografía 3D
en tiempo real
para React

Real-time 3D cartography for React.

Un motor Three.js imperativo que React monta y luego deja trabajar. MapEngine posee la cámara, los tiles y las capas, así que el bucle de render nunca espera a un re-render.

npm i @pasquelin/map3d three react react-dom

Versión
0.6.0
Peers
react 19 · three ≥ 0.160
Build
ESM + CJS + .d.ts
Licencia
PolyForm Noncommercial

Demos en vivo

Pruébala en el navegador

Sin instalación ni claves. Las demos se compilan desde este repositorio en cada push y se sirven directamente desde GitHub Pages.

Capacidades

Lo que viene incluido

Cada superficie — barra de herramientas, controles, búsqueda, retícula, clustering — se monta dentro de <Map> y se gobierna por configuración. Tú aportas los datos.

En acción

Las herramientas, funcionando

Cada captura viene de la demo que puedes abrir arriba — ningún mockup.

Primeros pasos

Un mapa con clusters en una docena de líneas

import { Map, markersLayer, type MarkerData } from '@pasquelin/map3d'

type Alert = { title: string }

const alerts: MarkerData<Alert>[] = [
  { id: 1, type: 'critical', position: { lat: 48.8566, lng: 2.3522 }, title: 'Intrusion', data: { title: 'Intrusion' } },
  { id: 2, type: 'info', position: { lat: 48.8606, lng: 2.3376 }, title: 'Patrol', data: { title: 'Patrol' } },
]

export function App() {
  return (
    <div style={{ height: '100vh' }}>
      <Map
        center={{ lat: 48.8566, lng: 2.3522 }}
        zoom={13}
        layers={[markersLayer<Alert>({ points: alerts, cluster: { enabled: true } })]}
      />
    </div>
  )
}

Los plugins opcionales — IGN Géoplateforme, Windy, planos de interior — viven en un repositorio aparte, y puedes escribir el tuyo con la API de plugins.