Author: Bashar (Si1verSurfer) · Repository: OSMFlutterMap
Shared OpenStreetMap integration for Flutter apps:
flutter_map+https://tile.openstreetmap.org/{z}/{x}/{y}.pnggeolocator(high accuracy; debounced stream in LocationService)- Backend-proxied OSRM (
/maps/route,/maps/match) and Nominatim (/maps/geocode,/maps/reverse) - Socket.io live tracking (
captain_locationevents) - Widgets: MapCanvas, RoutePolylineLayer, TrackingMarkersLayer
From pub.dev (after publish):
dependencies:
talabaty_maps: ^1.0.0From Git:
dependencies:
talabaty_maps:
git:
url: https://github.com/Si1verSurfer/OSMFlutterMap.git
ref: maindart pub publish --dry-run
dart pub publishUse a clean git tree; sign in with dart pub token / Google account on pub.dev.
In AndroidManifest.xml (above <application>):
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />In Info.plist:
<key>NSLocationWhenInUseUsageDescription</key>
<string>Your reason for using location.</string>Pass the same value as your REST client: http://host:port/api/v1 (no trailing slash).
Socket.io URL is the origin only — use socketOriginFromApiBaseUrl.
- Markers: cap list size when many POIs; prefer clustering or viewport filtering.
- Polylines: simplify geometry client-side for huge routes if needed.
- Attribution: pass real
userAgentPackageNameinbuildOsmTileLayers; useattributionLabelfor i18n.
Add an integration_test/ target in the consuming app to smoke-test against a staging API.