---
canonical_url: "https://maplibre.mhaibaraai.cn/en"
---
::u-page-hero{className="dark:bg-gradient-to-b,from-neutral-900,to-neutral-950" orientation="horizontal"}
::template{v-slot:top=""}
:hero-background
::

::template{v-slot:title=""}
:motion[Declarative MapLibre GL Components]
::

::template{v-slot:description=""}
::motion{:transition="{"duration":0.6,"delay":0.3}"}
Compose maps, layers, markers and controls declaratively with two-way `v-model` camera bindings. One component set works across Nuxt 4 and plain Vue + Vite, with built-in 3D buildings, dynamic effects, 3D environment, and localization basemaps — no access token required.
::
::

::template{v-slot:links=""}
::motion{:transition="{"duration":0.6,"delay":0.5}" className="flex,flex-wrap,gap-x-6,gap-y-3"}
[](https://maplibre.mhaibaraai.cn/docs/getting-started)

[](https://github.com/mhaibaraai/movk-maplibre)
::
::

::motion{:transition="{"duration":0.6,"delay":0.1}" className="mx-auto,w-full"}
:home-hero-demo
::
::

::u-page-section{className="dark:bg-neutral-950"}
:template[Core Features]{v-slot:title=""}:template[Declarative composition, context injection, and dual-mode runtime — from a simple basemap to complex 3D effects and localized tile services, adopt only what you need.]{v-slot:description=""}::template{v-slot:features=""}
::u-page-feature{icon="i-lucide-blocks"}
:template[Declarative Composition]{v-slot:title=""}:template[Compose maps, sources, layers, markers, popups and controls as components. State is the view — no more imperative add/remove boilerplate.]{v-slot:description=""}
::

::u-page-feature{icon="i-lucide-share-2"}
:template[MaplibreContext Injection]{v-slot:title=""}:template[The root component provides context down the tree. Child components access the map instance, isLoaded, and whenLoaded() via useMap() — no id lookups needed.]{v-slot:description=""}
::

::u-page-feature{icon="i-lucide-move"}
:template[Camera Two-Way Binding]{v-slot:title=""}:template[v-model:center / zoom / bearing / pitch keeps camera parameters in sync both ways, with cross-route persistent support.]{v-slot:description=""}
::

::u-page-feature{icon="i-lucide-layers"}
:template[Rich Layers & Effects]{v-slot:title=""}:template[Built-in circle / fill / line / symbol / fill-extrusion / heatmap layers plus clustering, buildings, raster and video layers. Overlay radar, diffusion, glow, ripple, migration, and trajectory dynamic effects.]{v-slot:description=""}
::

::u-page-feature{icon="i-lucide-cloud-sun"}
:template[3D Environment]{v-slot:title=""}:template[Sky and atmosphere, terrain, and temperature heatmaps — combined with camera tilt for an immersive 3D scene.]{v-slot:description=""}
::

::u-page-feature{icon="i-lucide-map"}
:template[Localization Extensions]{v-slot:title=""}:template[Tianditu basemaps, WMS / WMTS services, terra-draw integration, and WGS84 / GCJ02 / BD09 coordinate conversion via gcoord — all out of the box.]{v-slot:description=""}
::

::u-page-feature{icon="i-lucide-package"}
:template[Nuxt / Vue Dual Mode]{v-slot:title=""}:template[Works as a Nuxt 4 module and also provides @movk/maplibre/vite + vue-plugin, so the same components are available in plain Vue + Vite projects.]{v-slot:description=""}
::

::u-page-feature{icon="i-lucide-toy-brick"}
:template[Composables & Utilities]{v-slot:title=""}:template[Composables including useMap, useMaplibreCamera, useMeasure, and useMapExport, paired with coordinate, buffer, geometry, and measurement utilities for progressive adoption.]{v-slot:description=""}
::
::
::

::u-page-c-t-a{:links="[{"label":"Star on GitHub","to":"https://github.com/mhaibaraai/movk-maplibre","target":"_blank","icon":"i-lucide-star","color":"neutral"},{"label":"Get Started","to":"/docs/getting-started","color":"neutral","variant":"outline","trailingIcon":"i-lucide-arrow-right"}]" className="dark:bg-neutral-950"}
:template[Start Building Your Next Map]{v-slot:title=""}:template[From a simple basemap to 3D buildings, dynamic effects, and localized tile services — Movk MapLibre distills the complexity of MapLibre GL into composable, declarative components.]{v-slot:description=""}
::

## Resources for Agents

- [API catalog: every service document this site publishes](https://maplibre.mhaibaraai.cn/.well-known/api-catalog)
- [Sitemap (XML)](https://maplibre.mhaibaraai.cn/sitemap.xml)
- [Sitemap (Markdown): every page on the site](https://maplibre.mhaibaraai.cn/sitemap.md)
- [MCP server card: MCP endpoint at https://maplibre.mhaibaraai.cn/mcp](https://maplibre.mhaibaraai.cn/.well-known/mcp/server-card.json)
- [MCP endpoint (streamable HTTP)](https://maplibre.mhaibaraai.cn/mcp)
- [llms.txt: index of the documentation for LLMs](https://maplibre.mhaibaraai.cn/llms.txt)
- [llms-full.txt: the full documentation as a single file](https://maplibre.mhaibaraai.cn/llms-full.txt)
- [Agent skills index: every skill published by this site](https://maplibre.mhaibaraai.cn/.well-known/skills/index.json)
- [Agent skill: movk-maplibre](https://maplibre.mhaibaraai.cn/.well-known/skills/movk-maplibre/SKILL.md)
- [Documentation](https://maplibre.mhaibaraai.cn/docs)
- [Homepage](https://maplibre.mhaibaraai.cn/raw/index.md)


## Sitemap

See the full [sitemap](https://maplibre.mhaibaraai.cn/sitemap.md) for all pages.
