Web siteleriniz ve uygulamalarınız için ücretsiz harita döşemeleri Hızlı. Ücretsiz. Daima.

OpenStreetMap verilerinden üretilen sınırsız vektör harita döşemelerini MapLibre GL veya Leaflet ile hemen kullanın. API anahtarı, kota veya sürpriz fatura yok.

Altyapı OpenFreeMap 🚀

Harita döşemeleri neden pahalılaşır (ve LFMaps neden pahalılaşmaz)?

Çoğu harita döşemesi sağlayıcısı sizi ücretsiz krediyle karşılar. Trafiğiniz artınca kullanıma dayalı ücretlendirme küçük bir denemeyi ciddi bir faturaya dönüştürür: anlaşılmaz sayaçlar, her harita yüklemesinde artan ücretler ve anlamak için hesap tablosu gerektiren fiyatlar. Google Maps ve Mapbox da böyle çalışır. Başta ücretsiz görünen hizmet, projeniz için istemediğiniz bir masrafa dönüşebilir.

LFMaps farklıdır. Ücretsiz gerçekten ücretsizdir: sürpriz, sınır ve fatura yok.

Ücretsiz harita döşemeleri için neden LFMaps'i seçmelisiniz?

Harita yayınlamak için gereken her şey burada. Fazlası yok.

API anahtarı gerekmez

Döşeme URL'sini ekleyin, kullanmaya başlayın. Kayıt, erişim belirteci veya kontrol paneli yok.

Sınırsız döşeme isteği

Kota, örtülü sınır veya harita yüklemesi başına sayaç yok. İhtiyacınız kadar kullanın.

Daima ücretsiz

Trafiğiniz ne olursa olsun sıfır maliyet: on görüntüleme de on milyon görüntüleme de.

İzleme ve veri toplama yok

Ziyaretçilerinizi izlemeyiz, çerez kullanmayız. Gizlilik politikanıza yeni maddeler eklemeniz gerekmez.

Canlı vektör harita döşemesi demosu: üç harita stili

Sitenize ücretsiz harita döşemeleri nasıl eklenir?

En iyi MapLibre GL ile çalışır; Leaflet ve React ile de uyumludur

1. adım: HTML sayfanıza MapLibre GL ekleyin

<link href="https://unpkg.com/maplibre-gl@6.11.2/dist/maplibre-gl.css" rel="stylesheet" />
<script type="importmap">
  { "imports": { "maplibre-gl": "https://unpkg.com/maplibre-gl@6.11.2/dist/maplibre-gl.mjs" } }
</script>

MapLibre GL v6 yalnızca ES modülleri olarak sunulur. Bu nedenle örnekler onu bir import map ve modül betiğiyle yükler.

Veya npm ile yükleyin

npm i maplibre-gl@^6

Ardından JavaScript kodunuza aktarın:

import * as maplibregl from 'maplibre-gl'
import 'maplibre-gl/dist/maplibre-gl.css'
import workerUrl from 'maplibre-gl/dist/maplibre-gl-worker.mjs?worker&url'

maplibregl.setWorkerUrl(workerUrl)

Paket içinde MapLibre kendi worker dosyasını bulamaz. Bu örnek Vite içindir; webpack ve diğerleri için şu kaynağa bakın: MapLibre kurulum kılavuzu.

2. adım: Haritanızı oluşturun

<div id="map" style="width: 100%; height: 500px"></div>
<script type="module">
  import * as maplibregl from 'maplibre-gl'

  const map = new maplibregl.Map({
    style: 'https://data.lfmaps.fr/styles/bright',
    center: [6.1844, 48.6937],
    zoom: 12,
    container: 'map',
  })
</script>

İpucu: Daha iyi Core Web Vitals değerleri için MapLibre'yi gerektiğinde yükleyin

Önerilir

Faydaları:

Largest Contentful Paint (LCP) değerini iyileştirir
First Input Delay (FID) değerini azaltır
Cumulative Layout Shift (CLS) değerini kontrol altında tutar
İlk yüklemede yaklaşık 750 KB tasarruf sağlar

Daha iyi Core Web Vitals değerleri arama sıralamasına da yardımcı olabilir

Daha hızlı bir ilk görüntüleme için bu yükleyiciyi kullanın:

// Vite örneği; diğer paketleyiciler için kurulum kılavuzuna bakın
import workerUrl from 'maplibre-gl/dist/maplibre-gl-worker.mjs?worker&url';

let maplibrePromise = null;
let cssLoaded = false;

/**
 * MapLibre GL ve CSS dosyasını gerektiğinde yükler
 * @returns {Promise} MapLibre GL modülü
 */
async function loadMapLibre() {
    if (!maplibrePromise) {
        maplibrePromise = Promise.all([
            import('maplibre-gl'),
            loadMapLibreCSS()
        ]).then(([module]) => {
            module.setWorkerUrl(workerUrl);
            return module;
        });
    }
    return maplibrePromise;
}

/**
 * MapLibre GL CSS dosyasını dinamik olarak yükler
 */
async function loadMapLibreCSS() {
    if (!cssLoaded) {
        await import('maplibre-gl/dist/maplibre-gl.css');
        cssLoaded = true;
    }
}

/**
 * MapLibre GL için gecikmeli yükleyici sınıfı
 * Gecikmeli yüklemeyle maplibregl benzeri bir API sunar
 */
export class MapLibreLoader {
    constructor() {
        this.maplibregl = null;
    }

    /**
     * Gerekirse önce MapLibre GL'yi yükleyerek yeni bir harita örneği oluşturur
     * @param {Object} options - Harita yapılandırma seçenekleri
     * @returns {Promise} Bir MapLibre GL Map örneği
     */
    async createMap(options) {
        this.maplibregl = await loadMapLibre();
        return new this.maplibregl.Map(options);
    }

    /**
     * Gerekirse yükleyerek MapLibre GL kitaplığını getirir
     * @returns {Promise} MapLibre GL kitaplığı
     */
    async getLibrary() {
        this.maplibregl = await loadMapLibre();
        return this.maplibregl;
    }
}

export default new MapLibreLoader();

Kullanım örneği:

import MapLibreLoader from './maplibre-loader.js';

// Haritayı yalnızca gerektiğinde oluşturun (ör. kaydırma veya kullanıcı etkileşiminde)
async function initMap() {
    const map = await MapLibreLoader.createMap({
        style: 'https://data.lfmaps.fr/styles/bright',
        center: [6.1844, 48.6937],
        zoom: 12,
        container: 'map',
    });
    
    // Kontroller, işaretçiler vb. ekleyin
    const maplibregl = await MapLibreLoader.getLibrary();
    map.addControl(new maplibregl.NavigationControl());
}

Gelişmiş özellikler ve API'nin tamamı için şu kaynağa bakın: MapLibre GL JS belgeleri

Leaflet mi kullanıyorsunuz? Tek eklentiyle ücretsiz döşemeler ekleyin

Leaflet vektör döşemelerini tek başına okuyamaz; maplibre-gl-leaflet eklentisiyle birlikte kullanın:

<link href="https://unpkg.com/leaflet@1.9.4/dist/leaflet.css" rel="stylesheet" />
<script type="importmap">
  { "imports": {
    "leaflet": "https://unpkg.com/leaflet@1.9.4/dist/leaflet-src.esm.js",
    "maplibre-gl": "https://unpkg.com/maplibre-gl@6.11.2/dist/maplibre-gl.mjs"
  } }
</script>

<script type="module">
  import * as L from 'leaflet'
  import { maplibreGL } from 'https://unpkg.com/@maplibre/maplibre-gl-leaflet@0.1.4/dist/leaflet-maplibre-gl.mjs'

  const map = L.map('map').setView([48.6937, 6.1844], 12)
  maplibreGL({
    style: 'https://data.lfmaps.fr/styles/bright',
  }).addTo(map)
</script>

Eklenti Leaflet 1.x sürümünü destekler: aynı ücretsiz döşemeler, sıfır fatura.

React için ücretsiz harita döşemeleri

npm i react-map-gl maplibre-gl@^6
import Map from 'react-map-gl/maplibre'
import { setWorkerUrl } from 'maplibre-gl'
import workerUrl from 'maplibre-gl/dist/maplibre-gl-worker.mjs?worker&url'
import 'maplibre-gl/dist/maplibre-gl.css'

setWorkerUrl(workerUrl)

export default function MyMap() {
  return (
    <Map
      initialViewState={{ longitude: 6.1844, latitude: 48.6937, zoom: 12 }}
      style={{ width: '100%', height: 500 }}
      mapStyle="https://data.lfmaps.fr/styles/bright"
    />
  )
}

mapbox-gl veya erişim belirteci gerekmez; react-map-gl doğrudan MapLibre GL ile çalışır.

Ücretsiz harita döşemesi stilleri: bright, positron ve liberty

  • https://data.lfmaps.fr/styles/bright
  • https://data.lfmaps.fr/styles/positron
  • https://data.lfmaps.fr/styles/liberty

Hız için tasarlandı: dünya genelinde hızlı döşeme sunumu

Çok hızlı

Döşemeler CDN üzerinden sunulur; haritalar göz açıp kapayıncaya kadar görünür

Güvenilir

%99,9 çalışma süresi

Küresel kapsam

Tüm dünyayı kapsayan OpenStreetMap verileri

Kolay entegrasyon

Birkaç satır MapLibre GL veya Leaflet koduyla yayına başlayın

Google Maps ve Mapbox'a ücretsiz alternatif

Aynı iş: sayfanızda bir harita. Ay sonunda ise çok farklı bir fatura.

Ücretli harita döşemesi sağlayıcıları

  • Önce ücretsiz kullanım, sınırı aşınca harita yüklemesi başına ücret
  • Oluşturmanız, korumanız ve yenilemeniz gereken bir API anahtarı
  • Takip etmeniz gereken kullanım panelleri, kotalar ve fatura uyarıları
  • Haritanızı kullanan kişilerden toplanan analiz verileri

LFMaps

  • Her trafik düzeyinde ücretsiz; aşılacak bir kullanım sınırı yok
  • Hesap olmadığı için API anahtarı da yok
  • İzlenecek bir şey yok: stil URL'sini yapıştırın ve devam edin
  • Siz veya ziyaretçileriniz izlenmezsiniz

Açık konuşalım: LFMaps yalnızca harita döşemeleri sunar. Adres arama, rota oluşturma ve adım adım yol tarifi hizmete dahil değildir.

Ücretsiz harita döşemeleri hakkında sık sorulan sorular

LFMaps gerçekten ücretsiz mi?

Evet. Trafiğiniz ne olursa olsun ücretli paket, kredi kartı veya kullanım faturası yok. LFMaps, bu sayfadaki diğer ücretsiz araçlar gibi bir yan proje olarak finanse edilir.

API anahtarına veya hesaba ihtiyacım var mı?

Hayır. Kayıt olmanıza veya belirteç yenilemenize gerek yok. Harita stilinizi bir LFMaps URL'sine yönlendirmeniz yeterli.

Harita döşemeleri için hız sınırı veya kota var mı?

Kota veya katı bir hız sınırı yok. Yalnızca tüm döşeme kümesini topluca indirmenizi istemiyoruz; web sitesi veya uygulamadaki normal harita kullanımı serbesttir.

LFMaps, MapLibre GL yanında Leaflet ile de çalışır mı?

Evet. Vektör döşemelerini yerel olarak işleyen MapLibre GL'yi öneriyoruz. Leaflet de maplibre-gl-leaflet eklentisiyle çalışır.

Harita verileri nereden geliyor?

Veriler OpenStreetMap'ten gelir ve OpenFreeMap üzerinden sunulur. Topluluk tarafından üretildikleri için ücretsiz kalabilirler.

LFMaps'i ticari bir web sitesinde kullanabilir miyim?

Evet, ticari projelerde de kullanabilirsiniz. Tek koşul, OpenStreetMap kaynak bilgisini haritada görünür tutmanızdır.

Ziyaretçilerimi izliyor musunuz?

Hayır. Döşeme isteklerinde kişisel veri toplamıyor veya çerez kullanmıyoruz. Harita eklemek gizlilik politikanıza yeni bir yük getirmez.

Google Maps veya Mapbox'tan farkı nedir?

Onlar ücretsiz bir kullanım katmanı sunar, büyüdüğünüzde harita yüklemesi başına ücret alır. LFMaps'te sayaç yoktur: on görüntülemede de on milyon görüntülemede de fiyat sıfırdır.