Start with hosted tiles
The SDK loads the routing graph it needs from our CDN. We take care of building and hosting the datasets.
OPEN DEVELOPER PREVIEW
Give your app a routing engine, not a bill for every route. Download the region you need. Keep using it from the local cache.
Free, MIT-licensed SDK. Hosted access is unmetered during preview.
Illustration · open the demo to measure a real route
A DIFFERENT PLACE TO ROUTE
The SDK loads the routing graph it needs from our CDN. We take care of building and hosting the datasets.
Valhalla runs in a Web Worker. Route calculation happens on the device, leaving your interface responsive.
Downloaded graph tiles persist where browser storage supports it. Repeat routes can reuse that data without downloading it again.
YOUR FIRST ROUTE
Use Valhalla routing, matrices, isochrones and map matching from JavaScript. Connect your hosted project and calculate a short route around Frankfurt.
Run it on a map →import { RouteWasmClient } from 'routewasm';
const client = new RouteWasmClient();
await client.init({
tileAuth: await mint(),
refreshTileAuth: mint,
}); // use the quickstart for your mint() function
const route = await client.call('route',
JSON.stringify({
locations: [
{ lat: 50.1069, lon: 8.6638 },
{ lat: 50.1214, lon: 8.6567 },
],
costing: 'auto',
})
);FREE SDK. MANAGED DATA.
One developer experience for routing and, next, a hosted Protomaps basemap. Open tools underneath. Infrastructure you don’t have to maintain.
Free during preview
Hosted Protomaps data for MapLibre, paired with the routing graph. Fixed monthly plans with included delivered GB, pooled across both.
Hosted basemaps, offline map caching and GB accounting are still being developed. Plan prices and update schedules are not finalized.
GOOD TO KNOW
Routing can use graph tiles already downloaded to the device. A new region still needs a connection, and the browser can evict stored data. The app and engine assets also need to be available offline. Basemap caching is separate and is not included in the current MapLibre example.
The SDK stays free. The hosted service is intended to use monthly plans with included delivered GB, not per-route charges. Usage accounting is not enabled in this preview. When limits arrive, we plan to pause further hosted downloads at the allowance rather than charge automatic overages.
Yes. Point the SDK at your own compatible Valhalla tiles and use your preferred MapLibre style. Our quickstart includes a MapLibre example with a public demo style. Your app remains responsible for the attribution and terms of its data sources.
Route calculation runs locally. Hosted tile requests still reveal which areas are downloaded. A third-party basemap receives its own map requests, too. Local processing reduces the need to send route requests to a server; it does not make network activity invisible.
The JavaScript SDK targets browser environments, including mobile browsers and web-based app shells. Native integrations and Safari/iOS offline behavior need additional testing; we are not claiming full native SDK parity.
BUILD SOMETHING THAT MOVES
Create a project and go straight to runnable code. No card, no waiting for an email.
Already registered? Sign in →