React Native SDK
React Native SDK
The official @navvo/react-native-maps package gives you two things:
<NavvoMapView/>— an embeddable, interactive Navvo basemap component (camera, markers, style switching, GeoJSON shape/line/fill wrappers) pointed at Navvo'sGET /tiles/style.NavvoServices— a fully typed (TypeScript) client for the Navvo Web Service (search, geocode, places, routing, traffic, matrix, isochrone, weather, EV, transit…).
Everything is Navvo-branded and only ever calls https://navvo.io/api/v1. Coordinates are uniformly { lat, lng }.
Install
npm install @navvo/react-native-maps
The package declares its embedded map-engine binding as a peer dependency — install prompts will guide you; iOS needs a pod install afterwards.
Initialize
import { NavvoMaps } from '@navvo/react-native-maps';
NavvoMaps.initialize({ apiKey: 'nvvo_YOUR_KEY' });
© Navvo.Display a map
import { NavvoMapView, NavvoMarker } from '@navvo/react-native-maps';
<NavvoMapView
styleName="standard" // standard · dark · positron · satellite · terrain · 3d
camera={{ center: { lat: 31.9539, lng: 35.9106 }, zoom: 12 }}
onPress={(p) => console.log(p)}
>
<NavvoMarker id="a" position={{ lat: 31.9539, lng: 35.9106 }} />
</NavvoMapView>
Use the services (no map required)
import { NavvoServices } from '@navvo/react-native-maps';
const svc = NavvoServices.instance; // uses the key from NavvoMaps.initialize
const result = await svc.search('coffee in Abdoun', { near: { lat: 31.95, lng: 35.91 }, limit: 8 });
const plan = await svc.plan({
locations: [{ lat: 31.95, lng: 35.91 }, { lat: 31.99, lng: 35.95 }],
costing: 'auto',
});
Errors
Every call throws a typed error class: NavvoAuthError (401), NavvoScopeError (403), NavvoNotFoundError (404), NavvoValidationError (400/422), NavvoRateLimitError (429, honours Retry-After), NavvoServerError (5xx), NavvoNetworkError/NavvoAbortError. place(slug) resolves null for unknown slugs.
<NavvoMapView/> renders via an embedded open-source map engine under the hood — you only ever interact with Navvo components and Navvo endpoints.iOS SDK
Install and use the NavvoMaps Swift package — a NavvoMapView for UIKit/SwiftUI plus an async NavvoServices client for search, geocoding, places, routing, traffic and more.
Desktop apps (Windows/macOS/Linux)
Ship Navvo Maps in native Windows, macOS and Linux desktop apps with Electron or Tauri on top of @navvo/maps-js — plus a ready-made runnable sample.