I'm building a prototype mobile/PWA for a senior capstone project with three teammates. It's a local dispatch and delivery tool that needs to show nearby destination pins, search addresses, calculate routes for drivers, and keep working if a driver temporarily loses data. Since we have essentially no budget, I'm looking for free or generous free-tier tools for map rendering, geocoding, routing, and offline maps. What stack would work well for a small regional prototype?
5 Answers
PMTiles is worth looking at for the offline requirement. It stores map tiles in a single archive that MapLibre can read, so you don’t need to run a tile server. The style file, fonts, and icon sprites also need to be bundled; including only the tile archive can result in a blank or unlabeled map. Tilemaker or similar tools can help create an archive for a limited region.
Offline map display and offline navigation are separate problems. PMTiles can provide the map imagery, but route calculation still needs a routing graph on the device. For a true offline demo, run or package a regional OSRM or Valhalla dataset. If offline directions are not essential, you could keep routing online and use the local map only as a fallback.
If you want the simplest capstone setup, use MapLibre with a hosted free-tier map provider while online, OpenRouteService for basic routing, and a small PMTiles region for offline viewing. If the project needs dependable routing or must work completely offline, self-host OSRM or Valhalla instead. A regional extract is much more realistic than trying to package worldwide data.
Be careful with geocoding. Public Nominatim servers generally aren’t suitable for autocomplete because they impose strict rate limits and prohibit rapid character-by-character searches. Photon is a better fit for search-as-you-type, especially if you can self-host it. Whichever service you choose, debounce requests, cache results, send a proper User-Agent, and don’t treat a public instance as production infrastructure.
A practical open-source stack would be MapLibre for rendering, Photon for address search, and OSRM or Valhalla for routing. For offline maps, generate a PMTiles archive containing only your delivery region and bundle it with the app. Keeping the geographic area small makes the files manageable and avoids relying on a paid tile service. Remember to follow OpenStreetMap attribution and the usage limits of any public services you use.

Related Questions
Keep Your Screen Awake Tool
Favicon Generator
JWT Token Decoder and Viewer
Ethernet Signal Loss Calculator
Glassmorphism CSS Generator with Live Preview
Remove Duplicate Items From List