mapbox_api
This package aim to :
- be a Dart SDK for Mapbox API with only http as dependency
- follow the official documentation
Examples
See examples/
for all available examples
import 'package:mapbox_api/mapbox_api.dart';
MapboxApi mapbox = MapboxApi(
accessToken: '<Mapbox API token>',
);
Get your API token on mapbox.com
Request directions services
final response = await mapbox.directions.request(
profile: NavigationProfile.DRIVING_TRAFFIC,
overview: NavigationOverview.FULL,
geometries: NavigationGeometries.GEOJSON,
steps: true,
coordinates: <List<double>>[
<double>[
37.786060, // latitude
-122.246225, // longitude
],
<double>[
37.785939, // latitude
-122.194292, // longitude
],
],
);
if (response.error == null) {
// response.routes ...
// response.waypoints ...
}
see basic example:
example/example.dart
see full example with flutter_gl:example/example_directions_flutter.dart
Request forward geocoding services
final response = await mapbox.forwardGeocoding.request(
searchText: 'tour eiffel',
fuzzyMatch: true,
language: 'fr',
proximity: <double>[
48.858638, // latitude
2.286020, // longitude
],
);
if (response.error == null) {
// response.features ...
}
see full example :
example/example_forward_search.dart
Supported API
Maps
Service | Implemented |
---|---|
Vector Tiles | :heavy_multiplication_x: |
Taster Tiles | :heavy_multiplication_x: |
Static Images | :heavy_multiplication_x: |
Static Tiles | :heavy_multiplication_x: |
Styles | :heavy_multiplication_x: |
Tilequery | :heavy_multiplication_x: |
Uploads | :heavy_multiplication_x: |
Mapbox Tiling Service | :heavy_multiplication_x: |
Datasets | :heavy_multiplication_x: |
Fonts | :heavy_multiplication_x: |
Navigation
Service | Implemented | Example |
---|---|---|
Directions | :white_check_mark: | example/example.dart example/example_directions_flutter.dart |
Isochrone | :white_check_mark: | |
Map Matching | :white_check_mark: | |
Matrix | :white_check_mark: | |
Optimization | :white_check_mark: |
Search
Service | Implemented | Batch | Example |
---|---|---|---|
Forward Geocoding | :white_check_mark: | :white_check_mark: | example/example_forward_search.dart |
Reverse Geocoding | :white_check_mark: | :white_check_mark: | example/example_reverse_search.dart |
Intersection | :white_check_mark: | :heavy_multiplication_x: | example/example_intersection_search.dart |
Accounts
Service | Implemented |
---|---|
Tokens | :heavy_multiplication_x: |
Related Packages
This SDK will work perfectly with flutter-mapbox-gl to display retrieved data (will work with any other package too). You may also need polyline package to convert polylines strings to coordinates.