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 ​