Skip to content

Guru Maps

Guru Maps is an offline maps and navigation app. Protocol Launcher allows you to generate Guru Maps URL scheme links.

Usage

There are two ways to use this library:

  • On-Demand import from subpaths enables tree-shaking and keeps bundles small.
  • Full Import from the root package is convenient but includes all app modules.

Pick On-Demand for production builds; Full Import is fine for quick scripts or demos.

Select Installation Method

On-Demand
Recommended. Optimized for production.
Full Import
Convenient. Good for quick scripts.

Notes

This module only wraps the guru: and guru:// APIs documented in the Guru Maps manual. The geo: helper is intentionally narrow: the official page only shows geo:lat,lon for displaying a location and notes that it does not support back_url.

backUrl maps to Guru Maps' documented back_url parameter.

Open Guru Maps

On-Demand
ts
import { open } from 'protocol-launcher/guru-maps'

const url = open()

Open with Back URL

On-Demand
ts
import { open } from 'protocol-launcher/guru-maps'

const url = open({
  backUrl: 'https://gurumaps.app',
})

Import File

On-Demand
ts
import { importFile } from 'protocol-launcher/guru-maps'

const url = importFile({
  url: 'https://gurumaps.app/example/feature_collection.geojson',
})
On-Demand
ts
import { search } from 'protocol-launcher/guru-maps'

const url = search({
  q: 'Wybrzeże Kościuszkowskie 20 Warszawa',
  coord: '52.2297,21.0122',
})
On-Demand
ts
import { navigate } from 'protocol-launcher/guru-maps'

const url = navigate({
  start: '52.2297,21.0122',
  finish: '52.2397,21.0222',
  via: '52.2347,21.0172',
  mode: 'bicycle',
  startNavigation: true,
})

Record Track

On-Demand
ts
import { recordTrack } from 'protocol-launcher/guru-maps'

const url = recordTrack({
  action: 'start',
})

Save Marker

On-Demand
ts
import { saveMarker } from 'protocol-launcher/guru-maps'

const url = saveMarker({
  name: 'MyMarker',
  coord: '52.2297,21.0122',
})

Show Place

On-Demand
ts
import { showPlace } from 'protocol-launcher/guru-maps'

const url = showPlace({
  coord: '52.2297,21.0122',
  zoom: 17,
})

Geo

On-Demand
ts
import { geo } from 'protocol-launcher/guru-maps'

const url = geo({
  coord: '52.2297,21.0122',
})

Official Documentation