MaplibreNative.Routing.Core
0.0.4
There is a newer version of this package available.
See the version list below for details.
See the version list below for details.
dotnet add package MaplibreNative.Routing.Core --version 0.0.4
NuGet\Install-Package MaplibreNative.Routing.Core -Version 0.0.4
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="MaplibreNative.Routing.Core" Version="0.0.4" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="MaplibreNative.Routing.Core" Version="0.0.4" />
<PackageReference Include="MaplibreNative.Routing.Core" />
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add MaplibreNative.Routing.Core --version 0.0.4
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
#r "nuget: MaplibreNative.Routing.Core, 0.0.4"
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package MaplibreNative.Routing.Core@0.0.4
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=MaplibreNative.Routing.Core&version=0.0.4
#tool nuget:?package=MaplibreNative.Routing.Core&version=0.0.4
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
MaplibreNativeRouting
A .NET MAUI navigation and routing plugin for MapLibre Native, built on top of MaplibreNativeMAUI.
Packages
| Package | Description |
|---|---|
MaplibreNative.Routing.Core |
Platform-agnostic routing models, engines, and navigation logic |
MaplibreNative.Routing |
MAUI handlers, NavigationPanel control, and UseMapLibreRouting builder extension |
MaplibreNative.Routing.Wpf |
WPF handlers, NavigationPanel UserControl, and AddMaplibreRouting DI extension |
Features
- Valhalla routing — pedestrian, bicycle, motorcycle, and auto profiles with highway avoidance
- Track-graph routing — offline A* pathfinding over imported GeoJSON/GPX track layers
- Hybrid routing — automatically stitches Valhalla road segments with trail A* segments
- Turn-by-turn navigation —
RouteProgressTrackersnaps GPS to route shape and advances steps - Maneuver announcements — fires events at 1000 m / 200 m / 30 m thresholds
- Highway warnings — detects motorway/trunk segments and surfaces a dismissible warning bar
NavigationPanelcontrol — dark overlay with maneuver icon, instruction, step distance, and ETA
Requirements
- .NET 10 MAUI (net10.0-android36.0, net10.0-windows10.0.19041.0) or .NET 10 WPF (net10.0-windows10.0.19041.0)
- MaplibreNative.Maui.Handlers ≥ 4.1.0
- Valhalla HTTP API endpoint (for road-profile routing)
Quick start — MAUI
// MauiProgram.cs
builder.UseMapLibreRouting(routeDataSource: myLayerRepository);
// In your page/viewmodel
var session = serviceProvider.GetRequiredService<NavigationSession>();
await session.StartAsync(new RouteOptions(origin, destination, RouteProfile.HybridMotorcycle)
{
ValhallaUrl = "https://your-valhalla-host/route",
TrackFeatures = await routeDataSource.GetRoutableTrackFeaturesAsync()
});
session.ProgressUpdated += (_, progress) => navigationPanel.Apply(progress);
Quick start — WPF
// App startup (e.g. App.xaml.cs / host builder)
services.AddMaplibreRouting(routeDataSource: myLayerRepository);
// In your window/viewmodel
var session = serviceProvider.GetRequiredService<NavigationSession>();
session.ProgressUpdated += (_, progress) => navigationPanel.Apply(progress);
await session.StartAsync(new RouteOptions(origin, destination, RouteProfile.HybridMotorcycle)
{
ValhallaUrl = "https://your-valhalla-host/route",
});
// From your GPS source (Windows Location API, NMEA parser, VistumblerCS, etc.)
void OnLocationChanged(double lat, double lon) => session.UpdateLocation(lat, lon);
Attribution
Routing model and navigation patterns adapted from maplibre-navigation-android (MIT License). See NOTICE.md.
License
MIT — see LICENSE.
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net10.0 is compatible. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.
-
net10.0
- No dependencies.
NuGet packages (2)
Showing the top 2 NuGet packages that depend on MaplibreNative.Routing.Core:
| Package | Downloads |
|---|---|
|
MaplibreNative.Routing
Package Description |
|
|
MaplibreNative.Routing.Wpf
Package Description |
GitHub repositories
This package is not used by any popular GitHub repositories.