talabaty_maps
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
Install
From pub.flutter-io.cn (after publish):
dependencies:
talabaty_maps: ^1.0.0
From Git:
dependencies:
talabaty_maps:
git:
url: https://github.com/Si1verSurfer/OSMFlutterMap.git
ref: main
Publish (maintainers)
dart pub publish --dry-run
dart pub publish
Use a clean git tree; sign in with dart pub token / Google account on pub.flutter-io.cn.
Android
In AndroidManifest.xml (above <application>):
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
iOS
In Info.plist:
<key>NSLocationWhenInUseUsageDescription</key>
<string>Your reason for using location.</string>
API base URL
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.
Performance notes
- 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.
Optional integration test
Add an integration_test/ target in the consuming app to smoke-test against a staging API.