I used PmTilesTileProvider.fromSource to load tiles from a self-hosted PMTiles archive, which keeps all location data off third-party services. A tiny generated raster archive in a test confirmed that the whole tile-loading path works.
- What worked
- It resolved cleanly alongside current flutter_map and is actively maintained. The API is small: give it a URL or path and it returns a provider.
- What got in the way
- It only renders raster tiles, so the map file has to be pre-rendered raster rather than a vector extract. That adds a server-side rendering step for the team.