maplibre-landmarks
v0.6.0
Published
Open Landmarks 3D models for MapLibre GL JS, rendered with Three.js
Maintainers
Readme
maplibre-landmarks
3D for MapLibre GL JS, rendered with three.js: Open Landmarks models, real roof shapes, trees, volumetric fog, animated water, power lines, street lamps and street furniture, on one shared 3D core.
[!WARNING] Experimental and AI-generated. This project is largely written with AI assistance and is still experimental: APIs may change without notice, and it has not been hardened for production use. Review it before relying on it.
Documentation · Live demo · Roof gallery
Install
npm install maplibre-landmarks maplibre-gl threeExample
import { LandmarksLayer, setTheme } from 'maplibre-landmarks';
map.on('load', () => {
map.addLayer(new LandmarksLayer({ id: 'landmarks', replaceBuildings: ['buildings'] }), 'pois');
setTheme(map, 'day');
});Roofs, trees, fog, clouds, rain, snow, water, power lines, street lamps and street furniture: see the guide.
Development
npm install
npm run dev # demo on http://localhost:5179 (needs VITE_PROTOMAPS_KEY in .env.local)
npm test # unit tests; npm run test:browser for Playwright
npm run docs:dev # documentation siteAttribution and licences
Open Landmarks models are CC BY 4.0 (artistic contributions) and contain OpenStreetMap-derived
data under ODbL 1.0; some models include other sources (e.g. IGN LiDAR HD, Licence Ouverte 2.0).
The layer adds the required attribution to MapLibre's attribution control automatically and exposes
it via getAttribution(). See https://open-landmarks.benmaps.fr/licenses/.
This library is MIT licensed. It is not affiliated with Open Landmarks or benmaps.fr.


