nuxt3-leaflet

nuxt3-leaflet

Leaflet integration with Nuxt

Nuxt Leaflet

npm versionnpm downloadsLicenseNuxt

A Nuxt 3 module to use Leaflet. It was made using Vue Leaflet which is a Vue 3 wrapper for Leaflet, that exposes the original Leaflet API as Vue components.

This module is really just about making it work with Nuxt 3 without the need to configure anything.

Features

  • ⚡  No configuration needed
  • 🦺  Typescript support
  • 🚠  Auto import

Quick Setup

  1. Add nuxt3-leaflet dependency to your project
# Using pnpmpnpm add -D nuxt3-leaflet# Using yarnyarn add --dev nuxt3-leaflet# Using npmnpm install --save-dev nuxt3-leaflet
  1. Add nuxt3-leaflet to the modules section of nuxt.config.ts
export default defineNuxtConfig({  modules: [    'nuxt3-leaflet'  ]})

That's it! You can now use Leaflet in your Nuxt app ✨

Usage

For a complete list of the components available, check out the original Vue Leaflet library.

Please note that components are exported in PascalCase, so for example, write <LMap> instead of <l-map>.

Basic

<template>  <div style="height:100vh; width:100vw">    <LMap      ref="map"      :zoom="zoom"      :center="[47.21322, -1.559482]"    >      <LTileLayer        url="https://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png"        attribution="&amp;copy; <a href=&quot;https://www.openstreetmap.org/&quot;>OpenStreetMap</a> contributors"        layer-type="base"        name="OpenStreetMap"      />    </LMap>  </div></template><script setup>import { ref } from 'vue'const zoom = ref(6)</script><style>body {  margin: 0;}</style>

Development

# Install dependenciesnpm install# Generate type stubsnpm run dev:prepare# Develop with the playgroundnpm run dev# Build the playgroundnpm run dev:build# Run ESLintnpm run lint# Run Vitestnpm run testnpm run test:watch# Release new versionnpm run release