We're building an open source library that can put turn-by-turn directions right in your app, so that your users don't need to switch between apps to get where they need to go. We think all apps should have the full power of our maps and complete control over design and user experience. Today you can sign up for early beta access!
Here's a preview of an early prototype:
Native libraries
We recently released version 3.1.0 of our iOS and Android SDKs. To keep these SDKs small & focused, we release extra features as small libraries for iOS and Android, like our mobile geocoding library. We'll do the same for turn-by-turn: no matter whether your app runs on a phone, a smartwatch, or a car, Mapbox can provide guidance instructions for your users visually or via your favorite text-to-speech engine. And our libraries are always open source.
New navigation styles
Using Mapbox vector maps you can create styles customized for your use case. We are designing new maps specifically for navigation that highlight traffic conditions and helpful landmarks. These new styles complement the library of current vector styles available via our Mobile SDK.
Traffic and re-routing
Our navigation engine is traffic-aware and provides different routes depending on traffic conditions. We re-route if you miss a turn or if there’s a new, faster route.
Beta access
App.onUserLoad(function() { if (App.user) { $signup.find(‘.anon-user’).addClass(‘hidden’); $signup.find(‘.auth-user’) .removeClass(‘hidden’) .html(‘Logged in as: ’ + App.user.id + ‘’);
$signup.find('input[type="email"]').attr('value', App.user.email);
} });
$signup.submit(function(ev) { var form = App.form(ev.currentTarget); if (!form.email || !App.validateEmail(form.email)) { Views.modal.show(‘err’, new Error(‘Please provide a valid email address’)); return false; }
if (!App.user) { analytics.identify(form.email, { email: form.email }, track); } else { analytics.identify(App.user.id, track); }
function track() { analytics.track(‘Signed up for mobile navigation beta program’); Views.modal.show(‘confirm’, ‘Thanks! We\’ll get back to you soon.’);
$signup.find('input[type="submit"]')
.attr('value', 'Submitted!')
.attr('disabled', true);
}
return false; });